Librerias.¶

In [ ]:
import pandas as pd
import numpy as np
import matplotlib.pyplot as plt
import seaborn as sns
import re
from unidecode import unidecode
from collections import defaultdict

Miscelánea¶

Configuración estilística de las gráficas.¶

In [3]:
# Ajustar el estilo y los colores globales
plt.style.use('seaborn-v0_8-darkgrid')  # Estilo de fondo con cuadrícula
sns.set_palette("Set2")  # Paleta de colores uniforme para todas las gráficas
sns.set_context("notebook", font_scale=1.1)  # Tamaño de fuente adecuado para notebooks

# Configuración adicional de estilo de gráficos
plt.rcParams.update({
    'axes.titlesize': 16,           # Tamaño de la fuente del título
    'axes.labelsize': 14,           # Tamaño de la fuente de los ejes
    'xtick.labelsize': 12,          # Tamaño de la fuente de las etiquetas del eje x
    'ytick.labelsize': 12,          # Tamaño de la fuente de las etiquetas del eje y
    'legend.fontsize': 12,          # Tamaño de la fuente de la leyenda
    'axes.titleweight': 'bold',     # Peso de la fuente del título
    'axes.labelweight': 'bold',     # Peso de la fuente de las etiquetas de los ejes
    'axes.edgecolor': 'gray',       # Color de los bordes de los ejes
    'axes.grid': True,              # Activar cuadrícula en todos los gráficos
    'grid.alpha': 0.3,              # Transparencia de la cuadrícula
    'grid.color': "gray",           # Color de la cuadrícula
    'legend.frameon': True,         # Fondo de la leyenda visible
    'legend.framealpha': 0.9,       # Transparencia del fondo de la leyenda
    'legend.loc': 'best',           # Ubicación de la leyenda
})

# Configuración de seaborn adicional para coherencia con matplotlib
sns.set_style("darkgrid", {"grid.color": ".6", "grid.linestyle": ":"})  # Línea de cuadrícula más clara y estilo de puntos

Funciones entendimiento de datos.¶

In [4]:
# Funciones para el EDA 

def plot_top_categories(dataset, column, top_n=10):
    """
    Genera un gráfico de barras para las categorías más frecuentes en una columna categórica,
    combinando las categorías menos frecuentes en una categoría "Otros".

    Parámetros:
    dataset (DataFrame): El dataset que contiene la columna.
    column (str): Nombre de la columna categórica.
    top_n (int): Número de categorías principales a mostrar. Las demás se agrupan como "Otros".
    """
    # Calcular las categorías principales y la suma de las demás
    top_categories = dataset[column].value_counts().nlargest(top_n)
    other = dataset[column].value_counts()[top_n:].sum()  # Sumar las categorías restantes
    top_categories["Otros"] = other  # Agregar "Otros" al final
    
    # Crear el gráfico de barras
    plt.figure(figsize=(8, 6))
    sns.barplot(x=top_categories.values, y=top_categories.index)
    plt.xlabel('Frecuencia')
    plt.ylabel(column)
    plt.title(f'Distribución de las principales categorías en {column}')
    plt.show()
    

def plot_numeric_distributions(dataset):
    """
    Genera histogramas para cada variable numérica en el dataset.

    Parámetros:
    dataset (DataFrame): El dataset a analizar.

    """
    # Seleccionar columnas numéricas
    numeric_columns = dataset.select_dtypes(include=['number']).columns
    num_columns = len(numeric_columns)

    # Calcular el número de filas y columnas necesarias para los subgráficos
    num_rows = int(np.ceil(num_columns / 3))

    # Crear subplots para los histogramas
    fig, axes = plt.subplots(nrows=num_rows, ncols=3, figsize=(15, 5 * num_rows))
    axes = axes.flatten()

    # Generar el histograma para cada columna numérica
    for i, column in enumerate(numeric_columns):
        dataset[column].hist(ax=axes[i], bins=20)
        axes[i].set_title(column)
        axes[i].set_xlabel('Valor')
        axes[i].set_ylabel('Frecuencia')

    # Eliminar subplots vacíos
    for j in range(i + 1, len(axes)):
        fig.delaxes(axes[j])

    # Ajustar el espaciado entre los subplots
    plt.tight_layout(rect=[0, 0, 1, 0.96])
    plt.suptitle("Distribución de variables numéricas", fontsize=16)
    plt.show()
    

def plot_correlation_matrix(dataset):
    """
    Genera una matriz de correlación para las columnas numéricas del dataset.

    Parámetros:
    dataset (DataFrame): El dataset a analizar.

    """
    # Seleccionar solo las columnas numéricas
    numeric_data = dataset.select_dtypes(include=['number'])

    plt.figure(figsize=(15, 12))  # Ajusta el tamaño para que sea más grande
    sns.heatmap(numeric_data.corr(), annot=True, cmap='coolwarm', fmt=".2f", square=True, annot_kws={"size": 6})
    plt.title("Matriz de correlación ajustada")
    plt.xticks(rotation=45, ha='right', fontsize=8)
    plt.yticks(fontsize=8)
    plt.show()

def plot_boxplots_and_detect_outliers(dataset):
    """
    Genera un boxplot para cada variable numérica en el dataset e imprime los datos atípicos.

    Parámetros:
    dataset (DataFrame): El dataset que contiene las variables numéricas a analizar.

    Retorna:
    outliers_dict (dict): Un diccionario que contiene los valores atípicos por columna.
    """
    # Seleccionar solo las columnas numéricas
    numeric_columns = dataset.select_dtypes(include=['number']).columns
    outliers_dict = {}

    # Crear un gráfico boxplot para cada variable numérica
    plt.figure(figsize=(15, 5 * len(numeric_columns)))
    for i, column in enumerate(numeric_columns, 1):
        plt.subplot(len(numeric_columns), 1, i)
        sns.boxplot(x=dataset[column])
        plt.title(f'Boxplot de {column}')
        
        # Calcular el rango intercuartílico (IQR) para detectar outliers
        Q1 = dataset[column].quantile(0.25)
        Q3 = dataset[column].quantile(0.75)
        IQR = Q3 - Q1
        lower_bound = Q1 - 1.5 * IQR
        upper_bound = Q3 + 1.5 * IQR
        
        # Identificar valores atípicos
        outliers = dataset[(dataset[column] < lower_bound) | (dataset[column] > upper_bound)][column]
        outliers_dict[column] = outliers.values
        
        # Mostrar la cantidad de datos atípicos
        print(f"{column} - Datos atípicos detectados: {len(outliers)}")
        if len(outliers) > 0:
            print(f"Valores atípicos: {outliers.values}\n")

    # Ajustar el espaciado entre los subplots
    plt.tight_layout()
    plt.show()

    return outliers_dict

Funciones para el análisis de cálidad.¶

In [5]:
def check_completeness(dataset):
    """
    Calcula el porcentaje de valores faltantes en cada columna y genera un gráfico de barras.

    Parámetros:
    dataset (DataFrame): El dataset a analizar.

    Retorna:
    missing_data (DataFrame): Un DataFrame con el número y porcentaje de valores faltantes por columna.
    """
    # Calcular valores faltantes
    missing_values = dataset.isnull().sum()
    missing_percentage = (missing_values / len(dataset)) * 100
    missing_data = pd.DataFrame({'Valores faltantes': missing_values, 'Porcentaje (%)': missing_percentage})
    
    # Filtrar columnas con valores faltantes
    missing_data = missing_data[missing_data['Valores faltantes'] > 0].sort_values(by='Porcentaje (%)', ascending=False)
    
    # Mostrar tabla de valores faltantes
    print("Completitud: Valores Faltantes")
    print(missing_data)

    # Graficar los valores faltantes
    plt.figure(figsize=(10, 6))
    missing_data['Porcentaje (%)'].plot(kind='bar')
    plt.title("Porcentaje de Valores Faltantes por Columna")
    plt.xlabel("Columnas")
    plt.ylabel("Porcentaje de Valores Faltantes (%)")
    plt.xticks(rotation=45, ha='right')
    plt.show()

    return missing_data

def check_uniqueness(dataset):
    """
    Detecta duplicados en el dataset, muestra el número y porcentaje de registros duplicados
    y devuelve los registros duplicados para su inspección.

    Parámetros:
    dataset (DataFrame): El dataset a analizar.

    Retorna:
    duplicate_info (dict): Diccionario con el número y porcentaje de duplicados, y los registros duplicados.
    """
    # Detección de duplicados
    duplicate_count = dataset.duplicated().sum()
    duplicate_percentage = (duplicate_count / len(dataset)) * 100
    duplicates = dataset[dataset.duplicated(keep=False)]  # Mantiene todas las filas duplicadas
    
    # Almacenar la información de duplicados
    duplicate_info = {
        'Número de duplicados': duplicate_count,
        'Porcentaje de duplicados (%)': duplicate_percentage,
        'Registros duplicados': duplicates
    }
    
    # Mostrar resultados
    print("Unicidad: Detección de Duplicados")
    print(f"Número de duplicados: {duplicate_count}")
    print(f"Porcentaje de duplicados: {duplicate_percentage:.2f}%")
    
    if duplicate_count > 0:
        print("\nRegistros duplicados (primeras 5 filas):")
        print(duplicates.head())  # Muestra solo las primeras 5 filas de duplicados para evitar imprimir demasiado
    
    return duplicate_info


def check_consistency(dataset, expected_dtypes=None):
    """
    Verifica si los tipos de datos de cada columna en el dataset coinciden con los tipos esperados.

    Parámetros:
    dataset (DataFrame): El dataset a analizar.
    expected_dtypes (dict): Opcional. Diccionario con los tipos de datos esperados para cada columna.
                            Ejemplo: {'FECHA_NACM': 'datetime64[ns]', 'SEXO': 'object'}

    Retorna:
    inconsistencies (dict): Diccionario con inconsistencias encontradas en tipos de datos.
    """
    inconsistencies = {}

    # Si no se proporcionan tipos esperados, detectarlos automáticamente en función del contenido
    if expected_dtypes is None:
        expected_dtypes = {}
        for col in dataset.columns:
            # Detectar si el contenido sugiere un tipo de dato específico
            if pd.api.types.is_datetime64_any_dtype(dataset[col]):
                expected_dtypes[col] = 'datetime64[ns]'
            elif pd.api.types.is_numeric_dtype(dataset[col]):
                expected_dtypes[col] = 'float64' if dataset[col].dtype == 'float' else 'int64'
            elif pd.api.types.is_categorical_dtype(dataset[col]):
                expected_dtypes[col] = 'category'
            else:
                expected_dtypes[col] = 'object'

    # Comparar los tipos de datos actuales con los esperados
    for col, expected_type in expected_dtypes.items():
        actual_type = dataset[col].dtype
        if actual_type != expected_type:
            inconsistencies[col] = {
                'Tipo actual': actual_type,
                'Tipo esperado': expected_type
            }
            print(f"Inconsistencia en '{col}': Tipo actual - {actual_type}, Tipo esperado - {expected_type}")
    
    if not inconsistencies:
        print("Todos los tipos de datos son consistentes con los esperados.")
    
    return inconsistencies

def check_validity_auto(dataset):
    """
    Verifica la validez de los datos comparando los valores con rangos automáticos para columnas numéricas
    y categorías válidas detectadas automáticamente para columnas categóricas.

    Parámetros:
    dataset (DataFrame): El dataset a analizar.

    Retorna:
    validity_issues (dict): Diccionario con los valores fuera de rango o no válidos para cada variable.
    """
    validity_issues = {}
    
    # Verificación automática de variables numéricas
    numeric_columns = dataset.select_dtypes(include=['number']).columns
    for col in numeric_columns:
        Q1 = dataset[col].quantile(0.25)
        Q3 = dataset[col].quantile(0.75)
        IQR = Q3 - Q1
        lower_bound = Q1 - 1.5 * IQR
        upper_bound = Q3 + 1.5 * IQR
        
        # Detectar valores fuera de rango
        out_of_range = dataset[(dataset[col] < lower_bound) | (dataset[col] > upper_bound)][col]
        if not out_of_range.empty:
            validity_issues[col] = {
                'Valores fuera de rango': out_of_range,
                'Rango detectado': (lower_bound, upper_bound)
            }
            print(f"{col} - Valores fuera de rango detectados: {len(out_of_range)}")
            print(f"Rango válido detectado: ({lower_bound}, {upper_bound})")
            print(f"Valores fuera de rango: {out_of_range.unique()}\n")
    
    # Verificación automática de variables categóricas
    categorical_columns = dataset.select_dtypes(include=['object', 'category']).columns
    for col in categorical_columns:
        valid_values = dataset[col].dropna().unique()  # Detecta los valores únicos como válidos
        invalid_values = dataset[~dataset[col].isin(valid_values)][col]
        
        if not invalid_values.empty:
            validity_issues[col] = {
                'Valores no válidos': invalid_values,
                'Valores válidos detectados': valid_values
            }
            print(f"{col} - Valores no válidos detectados: {len(invalid_values)}")
            print(f"Valores válidos detectados: {valid_values}")
            print(f"Valores no válidos: {invalid_values.unique()}\n")
    
    return validity_issues

Cargar datos.¶

In [5]:
# Cargar datos de nacimientos
nac2017_data = pd.read_csv('./data/nac2017.csv', encoding='latin1')
nac2018_data = pd.read_csv('./data/nac2018.csv', encoding='latin1')
nac2021_data = pd.read_csv('./data/nac2021.csv', encoding='latin1')
nac2022_data = pd.read_csv('./data/nac2022.csv', encoding='latin1')

# Cargar la tabla de referencia (asegúrate de reemplazar 'ruta/tabla_referencia.csv' con la ruta correcta)
ciudades_cod = pd.read_csv('./data/ciudades.csv', delimiter=';')

# Cargar datos de temperatura, presión y humedad
temp_data_df = pd.read_csv("./data/temp_data.csv")      # Dataset de temperatura
pres_data_df = pd.read_csv("./data/pres_data.csv")      # Dataset de presión
hum_data_df = pd.read_csv("./data/hum_data.csv")        # Dataset de humedad

# Cargar datos de hospitales
hospitales_df = pd.read_csv("./data/servsal_dpto.csv", encoding='utf-8-sig')
instituciones_df = pd.read_csv("./data/instituciones_de_salud_en_colombia.csv", encoding='utf-8-sig')
C:\Users\PC2\AppData\Local\Temp\ipykernel_7124\3546376632.py:5: DtypeWarning: Columns (4) have mixed types. Specify dtype option on import or set low_memory=False.
  nac2022_data = pd.read_csv('./data/nac2022.csv', encoding='latin1')
In [6]:
resHosp = pd.read_csv("./data/resps.csv", encoding='utf-8-sig')
C:\Users\PC2\AppData\Local\Temp\ipykernel_7124\58514961.py:1: DtypeWarning: Columns (0,2) have mixed types. Specify dtype option on import or set low_memory=False.
  resHosp = pd.read_csv("./data/resps.csv", encoding='utf-8-sig')

Descripción de las Columnas¶

Las principales variables contenidas en este dataset y sus interpretaciones se describen a continuación:

  1. Localización geográfica:

    • COD_DPTO: Código del departamento donde ocurrió el nacimiento.
    • COD_MUNIC: Código del municipio de nacimiento.
    • AREA_RES: Área de residencia (urbana o rural) del neonato.
  2. Características del nacimiento:

    • AREANAC: Área de ocurrencia del nacimiento (urbana o rural).
    • SIT_PARTO: Lugar donde se llevó a cabo el parto.
    • OTRO_SIT: Opción adicional para especificar otros lugares de parto no contemplados en SIT_PARTO.
    • TIPO_PARTO: Tipo de parto (e.g., natural, cesárea).
    • MUL_PARTO: Número de neonatos en el parto (simple o múltiple).
    • APGAR1 y APGAR2: Puntuaciones APGAR en el primer y quinto minuto, indicando la salud del recién nacido.
    • ATEN_PAR: Persona o entidad que atendió el parto.
    • PROFESION: Profesión del que certifica el nacimiento.
  3. Características del neonato:

    • SEXO: Sexo del neonato.
    • PESO_NAC: Peso al nacer del bebé.
    • TALLA_NAC: Talla del neonato al momento de nacer.
    • T_GES: Edad gestacional en semanas.
    • T_GES_AGRU_CIE: Edad gestacional agrupada en categorías según la clasificación CIE.
  4. Información de salud y condiciones perinatales:

    • IDHEMOCLAS: Hemoclasificación del nacido vivo (Clasificación Sanguínea).
    • Inac2017_dataACTORRH: Factor RH del neonato.
    • IDPERTET: De acuerdo con la cultura, pueblo o rasgos físicos, el nacido vivo es reconocido por sus padres como.
    • NUMCONSUL: Número de consultas prenatales recibidas durante el embarazo.
  5. Datos de la madre:

    • EDAD_MADRE: Edad de la madre al momento del nacimiento.
    • EST_CIVM: Estado civil de la madre.
    • NIV_EDUM: Nivel educativo alcanzado por la madre.
    • ULTCURMAD: Último año o grado aprobado por la madre.
    • FECHA_NACM: Fecha de nacimiento del anterior hijo nacido vivo.
    • N_HIJOSV: Número de hijos vivos al que ha tenido la madre incluyendo el presente.
    • SEG_SOCIAL: Cobertura de seguridad social de la madre.
    • IDCLASADMI: Clasificación administrativa de salud según el régimen al que pertenece la madre.
  6. Datos del padre:

    • EDAD_PADRE: Edad del padre al momento del nacimiento.
    • NIV_EDUP: Nivel educativo alcanzado por el padre.
    • ULTCURPAD: Último año o grado aprobado por el padre.
  7. Otras variables:

    • ANO y MES: Año y mes del nacimiento.
    • CODPRES: Código de prestador de salud.
    • CODPTORE y CODMUNRE: Departamento y municipio de residencia del recién nacido.

Notas Adicionales¶

Este dataset contiene algunos valores nulos en las columnas OTRO_SIT, FECHA_NACM, CODPTORE, CODMUNRE, AREA_RES y IDCLASADMI, los cuales deberán manejarse adecuadamente para asegurar la calidad y consistencia del análisis.

Entendimiento de datos.¶

Entendimiento de los Datos – Perfilamiento y Análisis de Calidad

1. Resumen de la Estructura de los Datos¶

Cada conjunto de datos contiene un número distinto de filas, observándose que los conjuntos de años anteriores tienden a tener un mayor número de filas en comparación con los años recientes, donde la cantidad de registros es menor. Esto podría sugerir una disminución en la recolección de datos o cambios en los métodos de captura a lo largo de los años. En cuanto a la estructura de las columnas:

  • En promedio, todos los conjuntos de datos comparten 38 columnas.
  • Los conjuntos de datos de los años 2021 y 2022 incluyen una columna adicional denominada tipo de formulario, que no resulta relevante para el análisis, por lo que se ha decidido no utilizarla en el procesamiento.

2. Tipos de Datos y Variables¶

Los conjuntos de datos presentan variables de varios tipos, como:

  • Enteros (int), para variables numéricas discretas.
  • Flotantes (float), para variables continuas.
  • Objetos (object), generalmente para variables categóricas.
  • La distribución de estas variables no sigue una distribución normal en la mayoría de los casos, sino que se observan diferentes patrones de distribución, lo cual debe tenerse en cuenta en el análisis estadístico y la interpretación de resultados.

3. Ausencia de Datos¶

Existen varias columnas que presentan valores ausentes de forma significativa:

  • La columna otro sitio, que representa el lugar de nacimiento, tiene más del 80% de sus datos ausentes en todos los conjuntos de datos. Esta alta ausencia sugiere que es una variable que no se registra consistentemente y, por lo tanto, tiene un valor limitado para el análisis.
  • La columna fecha de nacimiento se utiliza para identificar si la madre ha tenido un nacimiento previo. Al igual que la columna anterior, esta variable tiene una cantidad considerable de valores ausentes.
  • La variable profesión del asistente del parto también tiene valores ausentes, aunque en menor proporción, por debajo del 10%. Esto podría ser relevante para el análisis si se decide estudiar el impacto del tipo de asistencia en el nacimiento.
  • La variable idclasdmi, que se refiere al lugar donde se atendió el parto, también presenta valores ausentes de manera constante en los distintos conjuntos de datos.

4. Calidad de los Datos¶

  • Incompletitud de Columnas: No todas las columnas están completas, lo que afecta la consistencia del análisis. Esta incompletitud es particularmente notable en las variables mencionadas anteriormente.
  • Tipos Incorrectos: Existen algunas columnas con tipos de datos incorrectos que deben ser corregidos para asegurar un procesamiento adecuado.
  • Distribución de las Variables: La mayoría de las variables no siguen una distribución normal, lo que indica que los métodos de análisis estadístico deben adaptarse a esta particularidad.
  • Valores Atípicos (Outliers): Se identificaron valores atípicos en algunas variables, pero se optó por no eliminarlos para no comprometer la integridad de la información. Estos valores atípicos aportan información relevante para el contexto del análisis y podrían ser indicativos de situaciones excepcionales en el conjunto de datos.

5. Duplicados¶

Se detectaron datos duplicados en cada uno de los conjuntos de datos. En este caso particular, estos duplicados no aportan valor adicional al análisis, por lo que se decidió eliminarlos. Los registros duplicados representan menos del 5% de cada conjunto de datos, lo cual minimiza el impacto de esta eliminación en la calidad general de los datos.

6. Correlaciones entre Variables¶

Se observaron correlaciones significativas entre ciertas variables, las cuales pueden variar dependiendo del conjunto de datos específico. Algunas de las correlaciones identificadas son:

  • Entre Apgar1 y Apgar2, que están relacionados con la evaluación inicial de la salud del recién nacido.
  • Entre número de consultas y sitio de parto, sugiriendo que el lugar de nacimiento puede influir en la cantidad de consultas registradas.
  • Estas correlaciones aportan valor analítico, ya que pueden revelar patrones que se reflejan en cada año de datos y permiten identificar relaciones consistentes entre variables.

7. Codificación de Variables Numéricas¶

Todos los conjuntos de datos comparten un formato de codificación en variables numéricas, lo cual es beneficioso en términos de eficiencia y compatibilidad técnica. Sin embargo, esta codificación podría dificultar la interpretación de los datos, especialmente para usuarios que necesiten entender el contenido para la creación de tableros de control o visualización de datos en herramientas de BI como Power BI o Tableau. En estos casos, sería recomendable incluir una fase de mapeo para convertir los valores numéricos en categorías legibles que faciliten la interpretación.

Nacimientos año 2017¶

In [7]:
nac2017_data.shape
Out[7]:
(656704, 38)
In [8]:
nac2017_data.head()
Out[8]:
COD_DPTO COD_MUNIC AREANAC SIT_PARTO OTRO_SIT SEXO PESO_NAC TALLA_NAC ANO MES ... AREA_RES N_HIJOSV FECHA_NACM N_EMB SEG_SOCIAL IDCLASADMI EDAD_PADRE NIV_EDUP ULTCURPAD PROFESION
0 8 1 1 1 NaN 2 6 5 2017 1 ... 1.0 2 27/09/2004 2 1 1.0 26 4 11 1
1 23 1 1 1 NaN 1 5 5 2017 1 ... 2.0 1 NaN 1 2 2.0 32 2 5 1
2 11 1 1 1 NaN 1 6 5 2017 1 ... 1.0 2 18/09/2013 2 1 1.0 27 3 9 1
3 52 1 1 1 NaN 2 5 4 2017 1 ... 3.0 2 03/07/2000 2 2 2.0 26 2 5 1
4 63 1 1 1 NaN 1 7 5 2017 1 ... 1.0 1 NaN 1 1 1.0 36 4 11 1

5 rows × 38 columns

In [9]:
nac2017_data.info()
<class 'pandas.core.frame.DataFrame'>
RangeIndex: 656704 entries, 0 to 656703
Data columns (total 38 columns):
 #   Column          Non-Null Count   Dtype  
---  ------          --------------   -----  
 0   COD_DPTO        656704 non-null  int64  
 1   COD_MUNIC       656704 non-null  int64  
 2   AREANAC         656704 non-null  int64  
 3   SIT_PARTO       656704 non-null  int64  
 4   OTRO_SIT        949 non-null     object 
 5   SEXO            656704 non-null  int64  
 6   PESO_NAC        656704 non-null  int64  
 7   TALLA_NAC       656704 non-null  int64  
 8   ANO             656704 non-null  int64  
 9   MES             656704 non-null  int64  
 10  ATEN_PAR        656704 non-null  int64  
 11  T_GES           656704 non-null  int64  
 12  T_GES_AGRU_CIE  656704 non-null  int64  
 13  NUMCONSUL       656704 non-null  int64  
 14  TIPO_PARTO      656704 non-null  int64  
 15  MUL_PARTO       656704 non-null  int64  
 16  APGAR1          656704 non-null  int64  
 17  APGAR2          656704 non-null  int64  
 18  IDHEMOCLAS      656704 non-null  int64  
 19  IDFACTORRH      656704 non-null  int64  
 20  IDPERTET        656704 non-null  int64  
 21  EDAD_MADRE      656704 non-null  int64  
 22  EST_CIVM        656704 non-null  int64  
 23  NIV_EDUM        656704 non-null  int64  
 24  ULTCURMAD       656704 non-null  int64  
 25  CODPRES         656703 non-null  float64
 26  CODPTORE        655438 non-null  float64
 27  CODMUNRE        655437 non-null  float64
 28  AREA_RES        655508 non-null  float64
 29  N_HIJOSV        656704 non-null  int64  
 30  FECHA_NACM      343064 non-null  object 
 31  N_EMB           656704 non-null  int64  
 32  SEG_SOCIAL      656704 non-null  int64  
 33  IDCLASADMI      639202 non-null  float64
 34  EDAD_PADRE      656704 non-null  int64  
 35  NIV_EDUP        656704 non-null  int64  
 36  ULTCURPAD       656704 non-null  int64  
 37  PROFESION       656704 non-null  int64  
dtypes: float64(5), int64(31), object(2)
memory usage: 190.4+ MB
In [10]:
nac2017_data.describe()
Out[10]:
COD_DPTO COD_MUNIC AREANAC SIT_PARTO SEXO PESO_NAC TALLA_NAC ANO MES ATEN_PAR ... CODMUNRE AREA_RES N_HIJOSV N_EMB SEG_SOCIAL IDCLASADMI EDAD_PADRE NIV_EDUP ULTCURPAD PROFESION
count 656704.000000 656704.000000 656704.000000 656704.000000 656704.000000 656704.000000 656704.000000 656704.0 656704.000000 656704.000000 ... 655437.000000 655508.000000 656704.000000 656704.000000 656704.000000 639202.000000 656704.000000 656704.000000 656704.000000 656704.000000
mean 33.370184 151.646415 1.018992 1.013041 1.487618 5.748814 4.589672 2017.0 6.616829 1.043828 ... 234.506043 1.351126 1.893667 2.063118 1.696131 1.655408 58.025043 14.798865 19.205003 1.016883
std 26.598225 253.341825 0.188827 0.139733 0.500130 1.072582 0.573479 0.0 3.423791 0.433671 ... 292.594517 0.716393 1.839017 2.029092 0.769390 0.732162 164.265630 29.365526 30.399744 0.241631
min 5.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 2017.0 1.000000 1.000000 ... 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 13.000000 1.000000 0.000000 1.000000
25% 11.000000 1.000000 1.000000 1.000000 1.000000 5.000000 4.000000 2017.0 4.000000 1.000000 ... 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 24.000000 3.000000 5.000000 1.000000
50% 20.000000 1.000000 1.000000 1.000000 1.000000 6.000000 5.000000 2017.0 7.000000 1.000000 ... 50.000000 1.000000 2.000000 2.000000 2.000000 2.000000 29.000000 4.000000 9.000000 1.000000
75% 54.000000 265.000000 1.000000 1.000000 2.000000 6.000000 5.000000 2017.0 10.000000 1.000000 ... 450.000000 1.000000 2.000000 3.000000 2.000000 2.000000 35.000000 8.000000 11.000000 1.000000
max 99.000000 980.000000 9.000000 9.000000 3.000000 9.000000 9.000000 2017.0 12.000000 9.000000 ... 980.000000 9.000000 99.000000 99.000000 9.000000 9.000000 999.000000 99.000000 99.000000 9.000000

8 rows × 36 columns

In [11]:
plot_numeric_distributions(nac2017_data)
No description has been provided for this image
In [12]:
plot_top_categories(nac2017_data, 'OTRO_SIT')
plot_top_categories(nac2017_data, 'FECHA_NACM')
No description has been provided for this image
No description has been provided for this image
In [13]:
plot_boxplots_and_detect_outliers(nac2017_data)
COD_DPTO - Datos atípicos detectados: 0
COD_MUNIC - Datos atípicos detectados: 50640
Valores atípicos: [797 834 758 ... 664 736 664]

AREANAC - Datos atípicos detectados: 7512
Valores atípicos: [3 3 3 ... 3 2 3]

SIT_PARTO - Datos atípicos detectados: 7303
Valores atípicos: [3 2 2 ... 2 2 2]

SEXO - Datos atípicos detectados: 0
PESO_NAC - Datos atípicos detectados: 39444
Valores atípicos: [1 8 2 ... 2 3 8]

TALLA_NAC - Datos atípicos detectados: 2527
Valores atípicos: [1 2 2 ... 9 9 9]

ANO - Datos atípicos detectados: 0
MES - Datos atípicos detectados: 0
ATEN_PAR - Datos atípicos detectados: 7120
Valores atípicos: [5 6 6 ... 2 5 6]

T_GES - Datos atípicos detectados: 135824
Valores atípicos: [3 3 3 ... 3 3 3]

T_GES_AGRU_CIE - Datos atípicos detectados: 65249
Valores atípicos: [2 3 3 ... 3 3 3]

NUMCONSUL - Datos atípicos detectados: 26824
Valores atípicos: [15 15  0 ... 13  0  0]

TIPO_PARTO - Datos atípicos detectados: 175
Valores atípicos: [4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 9 9 9 9 9 9 9 9 9 9 9 9 9
 9 9 9 9 9 9 4 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 4 9 4 9 9
 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9
 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 4 4 4]

MUL_PARTO - Datos atípicos detectados: 11435
Valores atípicos: [2 2 2 ... 2 2 2]

APGAR1 - Datos atípicos detectados: 28549
Valores atípicos: [ 6  6  1 ...  5 99 99]

APGAR2 - Datos atípicos detectados: 17319
Valores atípicos: [ 6  3 99 ...  7 99 99]

IDHEMOCLAS - Datos atípicos detectados: 10936
Valores atípicos: [9 9 9 ... 9 9 9]

IDFACTORRH - Datos atípicos detectados: 39747
Valores atípicos: [2 2 2 ... 2 2 2]

IDPERTET - Datos atípicos detectados: 50285
Valores atípicos: [5 1 1 ... 5 1 5]

EDAD_MADRE - Datos atípicos detectados: 227
Valores atípicos: [ 9  9  9  9  9  9  9  9  9  9  9  9  9  9  9  9  9  9  9  9  9  9  9  9
  9  9  9  9  9  9  9  9  9  9  9  9  9  9  9  9  9  9  9  9  9  9  9  9
  9  9  9  9  9  9  9  9  9  9  9  9  9  9  9  9  9  9  9  9  9  9  9  9
  9  9  9  9  9  9  9  9  9  9  9  9  9  9  9  9  9  9  9  9  9  9  9  9
  9  9  9  9  9  9  9  9  9  9  9  9  9  9  9  9  9  9  9  9  9  9  9  9
  9  9  9  9  9  9  9  9  9  9  9  9  9  9  9  9 99 99 99 99 99 99 99 99
 99 99 99 99 99 99 99 99 99  9 99 99 99 99 99 99 99 99 99 99 99 99 99 99
 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99
 99  9 99 99 99 99 99 99 99 99 99  9 99 99 99 99 99 99 99 99 99 99 99 99
 99 99 99 99  9  9  9  9  9  9  9]

EST_CIVM - Datos atípicos detectados: 0
NIV_EDUM - Datos atípicos detectados: 23282
Valores atípicos: [99 99 99 ... 99 99 99]

ULTCURMAD - Datos atípicos detectados: 31249
Valores atípicos: [99 99 99 ... 99 99 99]

CODPRES - Datos atípicos detectados: 1195
Valores atípicos: [ 76. 174. 862. ... 862. 862. 862.]

CODPTORE - Datos atípicos detectados: 0
CODMUNRE - Datos atípicos detectados: 0
AREA_RES - Datos atípicos detectados: 139802
Valores atípicos: [2. 3. 3. ... 3. 3. 3.]

N_HIJOSV - Datos atípicos detectados: 51143
Valores atípicos: [4 4 6 ... 7 4 5]

N_EMB - Datos atípicos detectados: 8446
Valores atípicos: [7 7 7 ... 7 7 7]

SEG_SOCIAL - Datos atípicos detectados: 17859
Valores atípicos: [5 5 5 ... 5 5 5]

IDCLASADMI - Datos atípicos detectados: 16189
Valores atípicos: [5. 5. 5. ... 5. 5. 5.]

EDAD_PADRE - Datos atípicos detectados: 26207
Valores atípicos: [999 999 999 ... 999 999 999]

NIV_EDUP - Datos atípicos detectados: 70785
Valores atípicos: [99 99 99 ... 99 99 99]

ULTCURPAD - Datos atípicos detectados: 82502
Valores atípicos: [99 99 99 ... 99 99 99]

PROFESION - Datos atípicos detectados: 3524
Valores atípicos: [4 2 3 ... 4 3 3]

No description has been provided for this image
Out[13]:
{'COD_DPTO': array([], dtype=int64),
 'COD_MUNIC': array([797, 834, 758, ..., 664, 736, 664], dtype=int64),
 'AREANAC': array([3, 3, 3, ..., 3, 2, 3], dtype=int64),
 'SIT_PARTO': array([3, 2, 2, ..., 2, 2, 2], dtype=int64),
 'SEXO': array([], dtype=int64),
 'PESO_NAC': array([1, 8, 2, ..., 2, 3, 8], dtype=int64),
 'TALLA_NAC': array([1, 2, 2, ..., 9, 9, 9], dtype=int64),
 'ANO': array([], dtype=int64),
 'MES': array([], dtype=int64),
 'ATEN_PAR': array([5, 6, 6, ..., 2, 5, 6], dtype=int64),
 'T_GES': array([3, 3, 3, ..., 3, 3, 3], dtype=int64),
 'T_GES_AGRU_CIE': array([2, 3, 3, ..., 3, 3, 3], dtype=int64),
 'NUMCONSUL': array([15, 15,  0, ..., 13,  0,  0], dtype=int64),
 'TIPO_PARTO': array([4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4,
        4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4,
        4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 9, 9, 9, 9, 9,
        9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 4, 9, 9, 9, 9, 9, 9, 9,
        9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 4, 9, 4, 9,
        9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9,
        9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9,
        9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 4, 4, 4],
       dtype=int64),
 'MUL_PARTO': array([2, 2, 2, ..., 2, 2, 2], dtype=int64),
 'APGAR1': array([ 6,  6,  1, ...,  5, 99, 99], dtype=int64),
 'APGAR2': array([ 6,  3, 99, ...,  7, 99, 99], dtype=int64),
 'IDHEMOCLAS': array([9, 9, 9, ..., 9, 9, 9], dtype=int64),
 'IDFACTORRH': array([2, 2, 2, ..., 2, 2, 2], dtype=int64),
 'IDPERTET': array([5, 1, 1, ..., 5, 1, 5], dtype=int64),
 'EDAD_MADRE': array([ 9,  9,  9,  9,  9,  9,  9,  9,  9,  9,  9,  9,  9,  9,  9,  9,  9,
         9,  9,  9,  9,  9,  9,  9,  9,  9,  9,  9,  9,  9,  9,  9,  9,  9,
         9,  9,  9,  9,  9,  9,  9,  9,  9,  9,  9,  9,  9,  9,  9,  9,  9,
         9,  9,  9,  9,  9,  9,  9,  9,  9,  9,  9,  9,  9,  9,  9,  9,  9,
         9,  9,  9,  9,  9,  9,  9,  9,  9,  9,  9,  9,  9,  9,  9,  9,  9,
         9,  9,  9,  9,  9,  9,  9,  9,  9,  9,  9,  9,  9,  9,  9,  9,  9,
         9,  9,  9,  9,  9,  9,  9,  9,  9,  9,  9,  9,  9,  9,  9,  9,  9,
         9,  9,  9,  9,  9,  9,  9,  9,  9,  9,  9,  9,  9,  9,  9,  9,  9,
        99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99,
         9, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99,
        99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99,
        99, 99, 99, 99, 99, 99,  9, 99, 99, 99, 99, 99, 99, 99, 99, 99,  9,
        99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99,  9,
         9,  9,  9,  9,  9,  9], dtype=int64),
 'EST_CIVM': array([], dtype=int64),
 'NIV_EDUM': array([99, 99, 99, ..., 99, 99, 99], dtype=int64),
 'ULTCURMAD': array([99, 99, 99, ..., 99, 99, 99], dtype=int64),
 'CODPRES': array([ 76., 174., 862., ..., 862., 862., 862.]),
 'CODPTORE': array([], dtype=float64),
 'CODMUNRE': array([], dtype=float64),
 'AREA_RES': array([2., 3., 3., ..., 3., 3., 3.]),
 'N_HIJOSV': array([4, 4, 6, ..., 7, 4, 5], dtype=int64),
 'N_EMB': array([7, 7, 7, ..., 7, 7, 7], dtype=int64),
 'SEG_SOCIAL': array([5, 5, 5, ..., 5, 5, 5], dtype=int64),
 'IDCLASADMI': array([5., 5., 5., ..., 5., 5., 5.]),
 'EDAD_PADRE': array([999, 999, 999, ..., 999, 999, 999], dtype=int64),
 'NIV_EDUP': array([99, 99, 99, ..., 99, 99, 99], dtype=int64),
 'ULTCURPAD': array([99, 99, 99, ..., 99, 99, 99], dtype=int64),
 'PROFESION': array([4, 2, 3, ..., 4, 3, 3], dtype=int64)}
In [14]:
plot_correlation_matrix(nac2017_data)
No description has been provided for this image

Análisis de cálidad de los datos.

In [15]:
missing_data17 = check_completeness(nac2017_data)
Completitud: Valores Faltantes
            Valores faltantes  Porcentaje (%)
OTRO_SIT               655755       99.855490
FECHA_NACM             313640       47.759721
IDCLASADMI              17502        2.665128
CODMUNRE                 1267        0.192933
CODPTORE                 1266        0.192781
AREA_RES                 1196        0.182122
CODPRES                     1        0.000152
No description has been provided for this image
In [16]:
duplicate_info17 = check_uniqueness(nac2017_data)
Unicidad: Detección de Duplicados
Número de duplicados: 2020
Porcentaje de duplicados: 0.31%

Registros duplicados (primeras 5 filas):
     COD_DPTO  COD_MUNIC  AREANAC  SIT_PARTO OTRO_SIT  SEXO  PESO_NAC  \
55          8          1        1          1      NaN     1         5   
59          8          1        1          1      NaN     2         5   
63          8          1        1          1      NaN     1         6   
370         8          1        1          1      NaN     1         5   
815         8          1        1          1      NaN     2         5   

     TALLA_NAC   ANO  MES  ...  AREA_RES  N_HIJOSV  FECHA_NACM  N_EMB  \
55           5  2017    1  ...       1.0         1         NaN      1   
59           4  2017    1  ...       1.0         1         NaN      1   
63           5  2017    1  ...       1.0         1         NaN      1   
370          4  2017    3  ...       1.0         1         NaN      1   
815          5  2017    1  ...       1.0         1         NaN      1   

     SEG_SOCIAL  IDCLASADMI  EDAD_PADRE  NIV_EDUP  ULTCURPAD  PROFESION  
55            2         2.0         999        99         99          1  
59            2         2.0         999        99         99          1  
63            2         2.0         999        99         99          1  
370           2         2.0         999        99         99          1  
815           2         2.0         999        99         99          1  

[5 rows x 38 columns]
In [17]:
validity_issues17 = check_validity_auto(nac2017_data)
COD_MUNIC - Valores fuera de rango detectados: 50640
Rango válido detectado: (-395.0, 661.0)
Valores fuera de rango: [797 834 758 858 887 837 843 847 785 682 755 698 835 754 688 865 736 892
 759 890 662 708 861 789 838 665 753 810 895 678 686 679 871 718 674 680
 773 874 770 899 832 807 687 672 873 814 821 743 670 872 667 787 689 885
 690 756 744 710 742 815 675 877 696 745 878 893 836 668 713 780 794 757
 673 799 699 883 819 824 875 855 772 790 823 777 870 685 820 671 711 788
 692 854 664 761 683 842 898 720 851 801 828 676 763 760 809 750 717 791
 703 798 707 666 800 681 684 980 960 867 863 663 862 845 771 849 856 792
 869 822 702 693 860 669 816 697 793 786 886 776 701 804 841 839 705 889
 769 894 740 884 774 817 778 888]

AREANAC - Valores fuera de rango detectados: 7512
Rango válido detectado: (1.0, 1.0)
Valores fuera de rango: [3 2 9]

SIT_PARTO - Valores fuera de rango detectados: 7303
Rango válido detectado: (1.0, 1.0)
Valores fuera de rango: [3 2 9]

PESO_NAC - Valores fuera de rango detectados: 39444
Rango válido detectado: (3.5, 7.5)
Valores fuera de rango: [1 8 2 3 9]

TALLA_NAC - Valores fuera de rango detectados: 2527
Rango válido detectado: (2.5, 6.5)
Valores fuera de rango: [1 2 9]

ATEN_PAR - Valores fuera de rango detectados: 7120
Rango válido detectado: (1.0, 1.0)
Valores fuera de rango: [5 6 2 3 4 9]

T_GES - Valores fuera de rango detectados: 135824
Rango válido detectado: (4.0, 4.0)
Valores fuera de rango: [3 2 5 1 6 9]

T_GES_AGRU_CIE - Valores fuera de rango detectados: 65249
Rango válido detectado: (4.0, 4.0)
Valores fuera de rango: [2 3 5 1 6 9]

NUMCONSUL - Valores fuera de rango detectados: 26824
Rango válido detectado: (0.5, 12.5)
Valores fuera de rango: [15  0 14 13 16 20 17 99 22 18 19 21 24 25 23]

TIPO_PARTO - Valores fuera de rango detectados: 175
Rango válido detectado: (-0.5, 3.5)
Valores fuera de rango: [4 9]

MUL_PARTO - Valores fuera de rango detectados: 11435
Rango válido detectado: (1.0, 1.0)
Valores fuera de rango: [2 3 4 9]

APGAR1 - Valores fuera de rango detectados: 28549
Rango válido detectado: (6.5, 10.5)
Valores fuera de rango: [ 6  1 99  4  2  5  3]

APGAR2 - Valores fuera de rango detectados: 17319
Rango válido detectado: (7.5, 11.5)
Valores fuera de rango: [ 6  3 99  5  4  7  1  2]

IDHEMOCLAS - Valores fuera de rango detectados: 10936
Rango válido detectado: (0.5, 4.5)
Valores fuera de rango: [9]

IDFACTORRH - Valores fuera de rango detectados: 39747
Rango válido detectado: (1.0, 1.0)
Valores fuera de rango: [2 9]

IDPERTET - Valores fuera de rango detectados: 50285
Rango válido detectado: (6.0, 6.0)
Valores fuera de rango: [5 1 3 4 2 9]

EDAD_MADRE - Valores fuera de rango detectados: 227
Rango válido detectado: (0.0, 8.0)
Valores fuera de rango: [ 9 99]

NIV_EDUM - Valores fuera de rango detectados: 23282
Rango válido detectado: (-3.0, 13.0)
Valores fuera de rango: [99]

ULTCURMAD - Valores fuera de rango detectados: 31249
Rango válido detectado: (-4.0, 20.0)
Valores fuera de rango: [99]

CODPRES - Valores fuera de rango detectados: 1195
Rango válido detectado: (170.0, 170.0)
Valores fuera de rango: [ 76. 174. 862. 533. 528. 152. 604. 591. 218. 840. 530. 124. 891. 643.
 548. 250. 704. 724. 634. 484. 384. 340.  44. 222. 388. 780.]

AREA_RES - Valores fuera de rango detectados: 139802
Rango válido detectado: (1.0, 1.0)
Valores fuera de rango: [2. 3. 9.]

N_HIJOSV - Valores fuera de rango detectados: 51143
Rango válido detectado: (-0.5, 3.5)
Valores fuera de rango: [ 4  6  5  7  8  9 10 12 11 14 13 99 17 15 16 18]

N_EMB - Valores fuera de rango detectados: 8446
Rango válido detectado: (-2.0, 6.0)
Valores fuera de rango: [ 7  8  9 10 11 12 14 17 13 99 16 15 19 18 20]

SEG_SOCIAL - Valores fuera de rango detectados: 17859
Rango válido detectado: (-0.5, 3.5)
Valores fuera de rango: [5 4 9]

IDCLASADMI - Valores fuera de rango detectados: 16189
Rango válido detectado: (-0.5, 3.5)
Valores fuera de rango: [5. 4. 9.]

EDAD_PADRE - Valores fuera de rango detectados: 26207
Rango válido detectado: (7.5, 51.5)
Valores fuera de rango: [999  58  52  53  62  55  61  54  59  56  69  64  70  65  57  71  60  63
  72  67  66  68  74  77  75  78  73  88  76  80  87  86  81  79 100]

NIV_EDUP - Valores fuera de rango detectados: 70785
Rango válido detectado: (-4.5, 15.5)
Valores fuera de rango: [99]

ULTCURPAD - Valores fuera de rango detectados: 82502
Rango válido detectado: (-4.0, 20.0)
Valores fuera de rango: [99]

PROFESION - Valores fuera de rango detectados: 3524
Rango válido detectado: (1.0, 1.0)
Valores fuera de rango: [4 2 3 5 9]

OTRO_SIT - Valores no válidos detectados: 655755
Valores válidos detectados: ['AMBULANCIA' 'AMBULANCIA EN CARRETERA' 'HOSPITAL ESSE NORTE 3'
 'VIA PUBLICA' 'TAXI' 'CARRETERA' 'FINCA' 'VEHICULO' 'carretera'
 'AMBULANCIA - CARRETERA VIA PUA' 'verda la nevera'
 'consultorio particular' 'RESGUARDO INDIGENA'
 'AMBULANCIA EN HOSPITAL SAN RAF' 'CCARRO'
 'CARRETERA EN CAMINO AL HOSPITA' 'AMBULANCIA REMISION SANTA ROSA' 'CASA'
 'via publica' 'CALLE' 'CARRO' 'VEHICULO PUBLICO'
 'EN AMBULANCIA  EN CARRETERA DE' 'VEREDA BERLIN' 'VIA FLUVIAL'
 'VIA PUBLICA EN AMBULANCIA.' 'AUTOMOVIL' 'DOMICILIO' 'puesto de salud'
 'VIA PUBLICA EN LA AMBULANCIA.' 'BASE NAVAL DE COVEÑAS'
 'VIA TRES ESQUINAS - CUNDAY' 'ambulancia' 'AMBULANCIA DE TRASLADO'
 'PUESTO DE SALUD LA GRANJA' 'PARTERA' 'CARRO DE POLICIA' 'VIA PÚBLICA'
 'PTO DE SALUD' 'VDA. CENEGUETA' 'CONDOMINIO LA TERTULIAS' 'IPS CHINACOTA'
 'calle' 'PUESTO DE SALUD' 'VIA PUERTO RICO - PUERTO LLERA'
 'VEHÌCULO PARTICULAR' 'EN LA VIA' 'EN CARRO' 'VEHICULO PARTICULAR'
 'VIA EL VERSO FILADELFIA' 'SALA DE PARTOS' 'BONGO' 'AMBULANCIA LARANDIA'
 'Carro' 'CAMPO ABIERTO' 'VIA PUBLICA AMBULANCIA' 'Vereda la Mina'
 'EN UN TAXI' 'EN EL TAXI' 'AMBULANCIA VIA SANTUARIO' 'IPS PROFSALUD'
 'LANCHA ACUATICA' 'MUNICIPIODE TOATA VDA GUAQUIRA' 'PARADOR ROJO'
 'vereda San Gerardo' 'AMBULANCIA EN EL TRASLADO'
 'PUESTO DE SALUD DE ORIHUECA' 'AMBULANCIA DE LA TEBAIDA'
 'EN UN VEHICULO PARTICULAR' 'AMBULANCIA EN TRASLADO' 'BAGON DE CAMIONETA'
 'Vehículo en movimiento' 'CERCA A LA QUEBRADA'
 'FUERA DE LA SALA DE PARTOS' 'CASA DE DESCONOCIDA'
 'VEREDA APOSENTOS ALTOS' 'RIO MINERO' 'carro particular'
 'CORREGIMIENTO DE TENCHE' 'VEREDA' 'IPS MISALUD SIPI'
 'LA CAÑADA- VEREDA LOS ASIENTOS' 'PUESTO DE SALUD SANTA RITA'
 'CENTRO DE SALUD GUAMALITO' 'BARRANCA-SAN BARTOLO' 'TRABAJO' 'LA CALLE'
 'EN SITIO PUBLICO' 'Baño publico' 'VEHICULO EN MOVIMIENTO' 'RANCHERIA'
 'AVION' 'CENTRO DE SALUD' 'BAÑO' 'AMBULANCIA LLEGANDO A PEREIRA'
 'LA UNION' 'CENTRO DE SALUD LAS CHANGAS' 'RANCHERIA ATAMANA'
 'TAXI VEHICULO' 'CLINICA PROSALUD' 'COOPERATIVA DE SALUD SAN ESTEB' 'BUS'
 'VEREDAA ABEJALES' 'BOTE - VEREDA VILLA FLOR' 'VEREDA DESCONOCIDO.'
 'SIACHOQUE' 'taxi' '4' 'COMUNIDAD' 'ALBERGUE SUKURAME' 'carro'
 'VIA  PUBLICA' 'CENTRO DE SALUD DE TOTA' 'UNA PANADERIA' 'TAXIS'
 'CONSULTORIO SERVIMEDICOS' 'VEREDA LA PLATA'
 'via publica dentro de un vehic' 'LOCAL COMERCIAL' 'VEHICULO TRANSPORTE'
 'PUESTO DE SALUD SAN ISIDRO DE' 'EN CARRO EN EL CUAL SE MOVILIZ'
 'PUEPUESTO DE SALUD DE ORIHUECA' 'CENTRO DE SALUD OCHALI'
 'casa de habitacion' 'EN LA CASA' 'AMBULANCIA TRASLADO CARRETERA'
 'CENTRO DE SALUD CHARCO LARGO L' 'VEHICULO ANDANTE' 'canoa'
 'CAMINO VEREDA LA CAPILLA' 'vehiculo' 'EN TAXI' 'vehiculo particular'
 'CAMU TIERRADENTRO' 'USAI LA COLORADA' 'VIA PLANETA RICA'
 'VEREDA LA TRINIDAD CASA VECINA' 'VIA PUBLICA.' 'FLORIDABLANCA'
 'HOSPITAL' 'CASA FAMILIAR' 'via pública' 'carretera el cairo santabarbar'
 'Calle' 'SECTOR LA SELVA  EN LA AMBULAN' 'EN UN BUS' 'POTRERO'
 'VEHICULO AUTOMOTOR' 'VEREDA YEGUERA' 'PANGA' 'CARRETERA-AMBULANCIA'
 'AMBULANCIA VIA PANAMERICANA' 'TRANSPORTE FLUVIAL CANOA'
 'puesto de salud patevaca yacop' 'GUARAPERIA LOCAL'
 'DOMICILIO VEREDA SESTEADERO' 'PUESTO SALUD'
 'Vehiculo durante el traslado' 'TASCO VEREDA CANELAS'
 'AMBULANCIA DE LA INSTITUCION' 'LA AMBULANCIA'
 'VEREDA LA PALMERA EN AMBULANCI' 'AMBULANCIA INSTITUCIONAL'
 'VERERDA ARRAYANES' 'PUESTO DE SALUD DE EL UNILLA'
 'EN EL VEHÍCULO AL INGRESO DE L' 'TRANSPORTE' 'PARTO EN AMBULANCIA'
 'DESCONOCIDO' 'TRASLADO AMBULANCIA' 'EN LA AMBULANCIA'
 'CENTRO DE RECUPERACION NUTRICI' 'casa de partero' 'VEHICULO (TAXI)'
 'VIA MARIQUITA A HONDA' 'EL DOMICILIO' 'CABECERA MUNICIPAL DE PAZ DE A'
 'PUESTO DE SALUD SANTA ROSA' 'EN CALLE' 'PATRULLA MOVIL'
 'PUESTO DE SALUD ORIHUECA' 'CANOA' 'CAFESALUD'
 'centro de salud charco largo l' 'CASA DE TERESA'
 'EN CANOA- RIO CAQUETA-VEREDA G' 'LANCHA' 'VEREDA CAMPO 23'
 'ASOCIACION DE PARTERAS ASOPARU' 'PUESTO DE SALUD RIO FRIO' 'VIA'
 'CAMIONETA' 'DURANTE EL TRASLADO' 'VEHÍCULO DE MOTOR' 'AMBULACIA'
 'movil 5037 ambulancia' 'PUERTO BELLO CAUCA' 'CAMINO A LA CARRETERA'
 'CENTRO DE SALUD BELENDE BAJIRA' 'VIA PUBLICA EN AMBULANCIA'
 'CENTRO POBLADO TOQUILLA MUNICI' 'EL CENTRO' 'SERVICIO PUBLICO TAXI'
 'VEREDA HATO VIEJO' 'LA CARRETERA' 'CARRETERA QUE CONDUCE AL CORRE'
 'AEROPUERTO' 'CARRO - VIA PUBLICA' 'VEHICULO PUBLICO - TAXI'
 'EN AMBULANCIA CARRETERA VIA FL' 'VDA MATA DE GUADUA' 'EN LA CALLE'
 'CENTRO DE SALUD LA LIBERTAD' 'VIA PUBLICA - TAXI'
 'PUESTO DE SALUD EL TIGRE' 'camino' 'AREA RURAL'
 'TRANSPORTE PUBLICO - TAXI' 'automovil' 'AMBULANCIA ACUATICA'
 'EN EL TAXI LLEGANDO AL HOSPITA' 'CORREGIMIENTO PARRAGA'
 'Via de San Vicente de Chucuri' 'ALBERGUE' 'AMBULANCIA BOMBEROS'
 'PUERTA DEL HOSPITAL' 'PUESTO DE SALUD PEDREGOSA'
 'AMBULANCIA- VIA TARSO - PEÑALI' 'EN AMBULANCIA POR LA VEREDA RI'
 'vereda hong kong' 'medio de transporte' 'CASA ABUELA' 'SITIO PUBLICO'
 'VÍA PÚBLICA' 'ESTACION DE TRANSPORTE' 'comunidad indigena'
 'HOTEL LOS PITUFOS' 'comunidad brisa del mar'
 'Vehiculo automotor (Camioneta)' 'CHALUPA' 'VEREDA EL CRUCE'
 'ORQUIDEA  SAN LUIS DEL TOMO' 'PUESTO SALUD CAÑO MAKU'
 'ambulamcia terrestre' 'ESE PRIMER NIVEL' 'LAGOS DEL DORADO'
 'EN EL CAMINO' 'EN UNA  CANOA  VIA  AL RIO' 'CLINICA CRECER'
 'VIA ZARAGOZA-CAUCASIA' 'FINCA PAISANDU' 'CARRETERA HACIA URRA'
 'EN LA VIA- CARRETERA' 'SURINEM UNUMA' 'CLINICA CES' 'MOTOCARRO'
 'CENTRO DE SALUD DE BATATA' 'CARCEL' 'rancheria'
 'en el vehiculo que la transpor' 'RESIDENCIA SANTANDER' 'VEHÍCULO'
 'EN EL AUTOMOVIL' 'SECTOR FINCA LA ALDEA EN AMBUL'
 'VEHICULO DE TRANSPORTE PUBLICO' 'via publica (taxi)' 'PUERTO PIZARIO'
 'VEREDA PLAYITA CAJAMBRE' 'AMBULANCIA EN IBAGUE'
 'VEHICULO DE SERVICIO PUBLICO' 'UN TAXI' 'LA CASA'
 'HOSPITAL   MENTAL FILANDIA' 'CAMI DE GAITANA' 'AUTOMOTOR'
 'VEHICULO DE TRANSPORTE  TAXI' 'PATRULLA DE POLICIA'
 'SERVICIO PUBLICO-TAXI' 'HOSPITAL AUSTIN CODAZI' 'EXTRAINSTITUCIONAL'
 'COMUNIDAD INDIGENA' 'CLINICA ESIMED BUCARAMANGA'
 'CENTRO DE SALUD DE SAN PEDRO D' 'AMBULANCIA EN EL PUEBLO DE TIM'
 'VEHICULO PUBLICO TAXI' 'HOTEL' 'SERVICIO PUBLICO'
 'AMBULANCIA DE LA INSTITUCIÓN E' 'VEREDA SAN PATRICIO'
 'EXTRAHOSPITALARIO - VIA LA YOP' 'VARIANTE DE FRESNO'
 'AMBULANCIA MOVIL 5117' 'BOTE' 'VIA PUEBLICA' 'CASA DEL CASERIO LIMON'
 'ASOCIACION D EPARTERAS ASOPARU' 'casa' 'CASA DE LA PARTERA'
 'CASA DE UN VECINO' 'PUESTO DE SALUD PITAL' 'CASA PARTERA'
 'AMBULANICIA HOSPITAL SANTA ROS' 'WENANBI' 'SELVA' 'EL RIO' 'RESGUARDO'
 'CASA FINCA' 'CASA FAMILIARES' 'VIA ORITO PTO ASIS' 'PATIO' 'RIO'
 'PUESTO DE SALUD DE RIO FRIO' 'ASOCIACION DE PARTERAS  ASOPAR'
 'FUERA DE VIVIENDA' 'EN EL CARRO EN QUE VENIA DESDE' 'CERCA DE LA CASA'
 'PATIO DE LA CASA' 'ASOCIACION DE  PARTERAS ASOPAR' 'FUERA DE LA CASA'
 'ASOCIACION DE PARTERAS ASOAPRU' 'EL  DOMICILIO' 'SIN INFORMACIÓN'
 'DOMICLIO' 'DISPENSARIO MEDICO DE BUCARAMA' 'ASMET SALUD'
 'FUERA VIVIENDA' 'FUERA DE LA VIVIIENDA' 'RASTROJO'
 'ASOCAICION DE PARTERAS ASOPARU' 'CAMPO AL AIRE'
 'PUESTO DE SALUD SIVERIA' 'CARRETERA VEREDA  EL EDEN' 'RESGUARDO REMANZO'
 'VIA PUBLICA FLUVIAL' 'TRANSPORTE ACUATICO MEDICALIZA' 'EN UNA CANOA'
 'ESTACION METRO' 'VIA PTO. PARRA' 'EN LA CASA DE LA FINCA'
 'VEHICULO DE TRANSPORTE' 'EN TRASLADO' 'BUSETA']
Valores no válidos: [nan]

FECHA_NACM - Valores no válidos detectados: 313640
Valores válidos detectados: ['27/09/2004' '18/09/2013' '03/07/2000' ... '17/11/1992' '22/06/1992'
 '29/09/1994']
Valores no válidos: [nan]

In [18]:
incosistences17 = check_consistency(nac2017_data)
Todos los tipos de datos son consistentes con los esperados.
C:\Users\PC2\AppData\Local\Temp\ipykernel_7124\604307692.py:92: DeprecationWarning: is_categorical_dtype is deprecated and will be removed in a future version. Use isinstance(dtype, pd.CategoricalDtype) instead
  elif pd.api.types.is_categorical_dtype(dataset[col]):

Nacimientos año 2018¶

In [19]:
nac2018_data.shape
Out[19]:
(649115, 38)
In [20]:
nac2018_data.head()
Out[20]:
COD_DPTO COD_MUNIC AREANAC SIT_PARTO OTRO_SIT SEXO PESO_NAC TALLA_NAC ANO MES ... AREA_RES N_HIJOSV FECHA_NACM N_EMB SEG_SOCIAL IDCLASADMI EDAD_PADRE NIV_EDUP ULTCURPAD PROFESION
0 5 1 1 1 NaN 1 7 5 2018 1 ... 1.0 2 13/08/2014 2 1 1.0 30 4 11 1
1 11 1 1 1 NaN 1 6 5 2018 1 ... 1.0 1 NaN 1 1 1.0 36 9 5 1
2 52 1 1 1 NaN 1 6 5 2018 1 ... 1.0 2 15/02/2011 3 2 2.0 27 4 11 1
3 11 1 1 1 NaN 1 6 5 2018 1 ... 1.0 1 NaN 2 1 1.0 32 9 5 1
4 50 1 1 1 NaN 1 5 4 2018 1 ... 3.0 1 NaN 1 2 2.0 21 4 11 1

5 rows × 38 columns

In [21]:
nac2018_data.info()
<class 'pandas.core.frame.DataFrame'>
RangeIndex: 649115 entries, 0 to 649114
Data columns (total 38 columns):
 #   Column          Non-Null Count   Dtype  
---  ------          --------------   -----  
 0   COD_DPTO        649115 non-null  int64  
 1   COD_MUNIC       649115 non-null  int64  
 2   AREANAC         649115 non-null  int64  
 3   SIT_PARTO       649115 non-null  int64  
 4   OTRO_SIT        1828 non-null    object 
 5   SEXO            649115 non-null  int64  
 6   PESO_NAC        649115 non-null  int64  
 7   TALLA_NAC       649115 non-null  int64  
 8   ANO             649115 non-null  int64  
 9   MES             649115 non-null  int64  
 10  ATEN_PAR        649115 non-null  int64  
 11  T_GES           649115 non-null  int64  
 12  T_GES_AGRU_CIE  649115 non-null  int64  
 13  NUMCONSUL       649115 non-null  int64  
 14  TIPO_PARTO      649115 non-null  int64  
 15  MUL_PARTO       649115 non-null  int64  
 16  APGAR1          649115 non-null  int64  
 17  APGAR2          649115 non-null  int64  
 18  IDHEMOCLAS      649115 non-null  int64  
 19  IDFACTORRH      649115 non-null  int64  
 20  IDPERTET        649115 non-null  int64  
 21  EDAD_MADRE      649115 non-null  int64  
 22  EST_CIVM        649115 non-null  int64  
 23  NIV_EDUM        649115 non-null  int64  
 24  ULTCURMAD       649115 non-null  int64  
 25  CODPRES         649115 non-null  int64  
 26  CODPTORE        645024 non-null  float64
 27  CODMUNRE        645024 non-null  float64
 28  AREA_RES        645128 non-null  float64
 29  N_HIJOSV        649115 non-null  int64  
 30  FECHA_NACM      341476 non-null  object 
 31  N_EMB           649115 non-null  int64  
 32  SEG_SOCIAL      649115 non-null  int64  
 33  IDCLASADMI      611937 non-null  float64
 34  EDAD_PADRE      649115 non-null  int64  
 35  NIV_EDUP        649115 non-null  int64  
 36  ULTCURPAD       649115 non-null  int64  
 37  PROFESION       649115 non-null  int64  
dtypes: float64(4), int64(32), object(2)
memory usage: 188.2+ MB
In [22]:
nac2018_data.describe()
Out[22]:
COD_DPTO COD_MUNIC AREANAC SIT_PARTO SEXO PESO_NAC TALLA_NAC ANO MES ATEN_PAR ... CODMUNRE AREA_RES N_HIJOSV N_EMB SEG_SOCIAL IDCLASADMI EDAD_PADRE NIV_EDUP ULTCURPAD PROFESION
count 649115.000000 649115.000000 649115.000000 649115.000000 649115.000000 649115.000000 649115.000000 649115.0 649115.000000 649115.000000 ... 645024.000000 645128.000000 649115.000000 649115.000000 649115.000000 611937.000000 649115.000000 649115.000000 649115.000000 649115.000000
mean 33.556153 155.288598 1.027009 1.019362 1.487505 5.753511 4.606293 2018.0 6.624797 1.067855 ... 238.898125 1.362373 1.896809 2.066732 1.812081 1.665745 52.961193 15.140921 17.802514 1.028433
std 26.517853 255.710369 0.220452 0.156905 0.500066 1.093571 0.647971 0.0 3.447090 0.537715 ... 294.366491 0.725760 1.250497 1.417519 0.941423 0.712519 149.128972 29.813059 28.953136 0.319205
min 5.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 2018.0 1.000000 1.000000 ... 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 13.000000 1.000000 0.000000 1.000000
25% 11.000000 1.000000 1.000000 1.000000 1.000000 5.000000 4.000000 2018.0 4.000000 1.000000 ... 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 24.000000 3.000000 5.000000 1.000000
50% 23.000000 1.000000 1.000000 1.000000 1.000000 6.000000 5.000000 2018.0 7.000000 1.000000 ... 60.000000 1.000000 2.000000 2.000000 2.000000 2.000000 29.000000 4.000000 9.000000 1.000000
75% 54.000000 266.000000 1.000000 1.000000 2.000000 6.000000 5.000000 2018.0 10.000000 1.000000 ... 466.000000 1.000000 2.000000 3.000000 2.000000 2.000000 35.000000 8.000000 11.000000 1.000000
max 99.000000 980.000000 3.000000 3.000000 3.000000 9.000000 9.000000 2018.0 12.000000 6.000000 ... 980.000000 9.000000 99.000000 99.000000 9.000000 9.000000 999.000000 99.000000 99.000000 5.000000

8 rows × 36 columns

In [23]:
plot_numeric_distributions(nac2018_data)
No description has been provided for this image
In [24]:
plot_top_categories(nac2018_data, 'OTRO_SIT')
plot_top_categories(nac2018_data, 'FECHA_NACM')
No description has been provided for this image
No description has been provided for this image
In [25]:
plot_boxplots_and_detect_outliers(nac2018_data)
COD_DPTO - Datos atípicos detectados: 0
COD_MUNIC - Datos atípicos detectados: 51142
Valores atípicos: [756 758 821 ... 736 669 834]

AREANAC - Datos atípicos detectados: 10288
Valores atípicos: [3 2 2 ... 3 2 2]

SIT_PARTO - Datos atípicos detectados: 10740
Valores atípicos: [2 2 2 ... 3 2 2]

SEXO - Datos atípicos detectados: 0
PESO_NAC - Datos atípicos detectados: 41404
Valores atípicos: [8 3 1 ... 8 3 8]

TALLA_NAC - Datos atípicos detectados: 5518
Valores atípicos: [9 2 2 ... 9 2 9]

ANO - Datos atípicos detectados: 0
MES - Datos atípicos detectados: 0
ATEN_PAR - Datos atípicos detectados: 10701
Valores atípicos: [5 4 6 ... 6 5 5]

T_GES - Datos atípicos detectados: 139315
Valores atípicos: [3 3 3 ... 3 3 3]

T_GES_AGRU_CIE - Datos atípicos detectados: 68065
Valores atípicos: [3 3 3 ... 3 3 3]

NUMCONSUL - Datos atípicos detectados: 35172
Valores atípicos: [0 0 0 ... 0 0 0]

TIPO_PARTO - Datos atípicos detectados: 203
Valores atípicos: [4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4]

MUL_PARTO - Datos atípicos detectados: 11398
Valores atípicos: [2 2 2 ... 2 2 2]

APGAR1 - Datos atípicos detectados: 32424
Valores atípicos: [99  6  3 ...  3  5  3]

APGAR2 - Datos atípicos detectados: 20460
Valores atípicos: [99  7  3 ...  7  5  5]

IDHEMOCLAS - Datos atípicos detectados: 15195
Valores atípicos: [9 9 9 ... 9 9 9]

IDFACTORRH - Datos atípicos detectados: 43720
Valores atípicos: [9 2 2 ... 9 2 2]

IDPERTET - Datos atípicos detectados: 53427
Valores atípicos: [1 5 1 ... 5 5 5]

EDAD_MADRE - Datos atípicos detectados: 815
Valores atípicos: [ 9  9  9  9  9  9  9  9  9  9  9  9  9  9  9  9  9  9  9  9  9  9  9  9
  9  9  9  9  9  9  9  9  9  9  9  9  9  9  9  9  9  9  9  9  9  9  9  9
  9  9  9  9  9  9  9  9  9  9  9  9  9  9  9  9  9  9  9  9  9  9  9  9
  9  9  9  9  9  9  9  9  9  9  9  9  9  9  9  9  9  9  9  9  9  9  9  9
  9  9  9  9  9  9  9  9  9  9  9  9  9  9  9  9  9  9  9  9  9  9  9  9
  9  9  9  9  9  9  9  9  9  9  9  9  9  9  9  9 99  9  9  9  9 99 99 99
 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99
 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99
 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99
 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99  9 99 99 99 99 99
 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99  9 99 99 99
 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99
 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99
 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99  9 99 99 99 99 99 99
 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99
 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99
 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99
 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99
 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99
 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99
 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99
 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99
 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99
 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99
 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99
 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99
 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99
 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99
 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99
 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99
 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99
 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99
 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99
 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99  9  9]

EST_CIVM - Datos atípicos detectados: 0
NIV_EDUM - Datos atípicos detectados: 27592
Valores atípicos: [99 99 99 ... 99 99 99]

ULTCURMAD - Datos atípicos detectados: 27598
Valores atípicos: [99 99 99 ... 99 99 99]

CODPRES - Datos atípicos detectados: 3987
Valores atípicos: [862 862 862 ... 862 862 862]

CODPTORE - Datos atípicos detectados: 0
CODMUNRE - Datos atípicos detectados: 0
AREA_RES - Datos atípicos detectados: 140589
Valores atípicos: [3. 3. 2. ... 3. 2. 3.]

N_HIJOSV - Datos atípicos detectados: 52099
Valores atípicos: [6 4 4 ... 5 5 4]

N_EMB - Datos atípicos detectados: 8341
Valores atípicos: [10  7  8 ...  9  7  7]

SEG_SOCIAL - Datos atípicos detectados: 37377
Valores atípicos: [5 5 5 ... 5 5 5]

IDCLASADMI - Datos atípicos detectados: 14627
Valores atípicos: [5. 5. 5. ... 5. 5. 5.]

EDAD_PADRE - Datos atípicos detectados: 22700
Valores atípicos: [999 999 999 ...  63 999  57]

NIV_EDUP - Datos atípicos detectados: 72429
Valores atípicos: [99 99 99 ... 99 99 99]

ULTCURPAD - Datos atípicos detectados: 72433
Valores atípicos: [99 99 99 ... 99 99 99]

PROFESION - Datos atípicos detectados: 5818
Valores atípicos: [4 3 3 ... 5 3 5]

No description has been provided for this image
Out[25]:
{'COD_DPTO': array([], dtype=int64),
 'COD_MUNIC': array([756, 758, 821, ..., 736, 669, 834], dtype=int64),
 'AREANAC': array([3, 2, 2, ..., 3, 2, 2], dtype=int64),
 'SIT_PARTO': array([2, 2, 2, ..., 3, 2, 2], dtype=int64),
 'SEXO': array([], dtype=int64),
 'PESO_NAC': array([8, 3, 1, ..., 8, 3, 8], dtype=int64),
 'TALLA_NAC': array([9, 2, 2, ..., 9, 2, 9], dtype=int64),
 'ANO': array([], dtype=int64),
 'MES': array([], dtype=int64),
 'ATEN_PAR': array([5, 4, 6, ..., 6, 5, 5], dtype=int64),
 'T_GES': array([3, 3, 3, ..., 3, 3, 3], dtype=int64),
 'T_GES_AGRU_CIE': array([3, 3, 3, ..., 3, 3, 3], dtype=int64),
 'NUMCONSUL': array([0, 0, 0, ..., 0, 0, 0], dtype=int64),
 'TIPO_PARTO': array([4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4,
        4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4,
        4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4,
        4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4,
        4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4,
        4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4,
        4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4,
        4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4,
        4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4,
        4, 4, 4, 4, 4], dtype=int64),
 'MUL_PARTO': array([2, 2, 2, ..., 2, 2, 2], dtype=int64),
 'APGAR1': array([99,  6,  3, ...,  3,  5,  3], dtype=int64),
 'APGAR2': array([99,  7,  3, ...,  7,  5,  5], dtype=int64),
 'IDHEMOCLAS': array([9, 9, 9, ..., 9, 9, 9], dtype=int64),
 'IDFACTORRH': array([9, 2, 2, ..., 9, 2, 2], dtype=int64),
 'IDPERTET': array([1, 5, 1, ..., 5, 5, 5], dtype=int64),
 'EDAD_MADRE': array([ 9,  9,  9,  9,  9,  9,  9,  9,  9,  9,  9,  9,  9,  9,  9,  9,  9,
         9,  9,  9,  9,  9,  9,  9,  9,  9,  9,  9,  9,  9,  9,  9,  9,  9,
         9,  9,  9,  9,  9,  9,  9,  9,  9,  9,  9,  9,  9,  9,  9,  9,  9,
         9,  9,  9,  9,  9,  9,  9,  9,  9,  9,  9,  9,  9,  9,  9,  9,  9,
         9,  9,  9,  9,  9,  9,  9,  9,  9,  9,  9,  9,  9,  9,  9,  9,  9,
         9,  9,  9,  9,  9,  9,  9,  9,  9,  9,  9,  9,  9,  9,  9,  9,  9,
         9,  9,  9,  9,  9,  9,  9,  9,  9,  9,  9,  9,  9,  9,  9,  9,  9,
         9,  9,  9,  9,  9,  9,  9,  9,  9,  9,  9,  9,  9,  9,  9,  9,  9,
        99,  9,  9,  9,  9, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99,
        99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99,
        99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99,
        99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99,
        99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99,
        99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99,  9, 99, 99, 99,
        99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99,
        99, 99, 99, 99, 99,  9, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99,
        99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99,
        99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99,
        99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99,
        99, 99, 99, 99, 99, 99,  9, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99,
        99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99,
        99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99,
        99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99,
        99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99,
        99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99,
        99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99,
        99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99,
        99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99,
        99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99,
        99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99,
        99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99,
        99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99,
        99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99,
        99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99,
        99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99,
        99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99,
        99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99,
        99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99,
        99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99,
        99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99,
        99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99,
        99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99,
        99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99,
        99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99,
        99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99,
        99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99,
        99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99,
        99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99,  9,  9],
       dtype=int64),
 'EST_CIVM': array([], dtype=int64),
 'NIV_EDUM': array([99, 99, 99, ..., 99, 99, 99], dtype=int64),
 'ULTCURMAD': array([99, 99, 99, ..., 99, 99, 99], dtype=int64),
 'CODPRES': array([862, 862, 862, ..., 862, 862, 862], dtype=int64),
 'CODPTORE': array([], dtype=float64),
 'CODMUNRE': array([], dtype=float64),
 'AREA_RES': array([3., 3., 2., ..., 3., 2., 3.]),
 'N_HIJOSV': array([6, 4, 4, ..., 5, 5, 4], dtype=int64),
 'N_EMB': array([10,  7,  8, ...,  9,  7,  7], dtype=int64),
 'SEG_SOCIAL': array([5, 5, 5, ..., 5, 5, 5], dtype=int64),
 'IDCLASADMI': array([5., 5., 5., ..., 5., 5., 5.]),
 'EDAD_PADRE': array([999, 999, 999, ...,  63, 999,  57], dtype=int64),
 'NIV_EDUP': array([99, 99, 99, ..., 99, 99, 99], dtype=int64),
 'ULTCURPAD': array([99, 99, 99, ..., 99, 99, 99], dtype=int64),
 'PROFESION': array([4, 3, 3, ..., 5, 3, 5], dtype=int64)}
In [26]:
plot_correlation_matrix(nac2018_data)
No description has been provided for this image

Análisis de cálidad de los datos.

In [27]:
missing_data18 = check_completeness(nac2018_data)
Completitud: Valores Faltantes
            Valores faltantes  Porcentaje (%)
OTRO_SIT               647287       99.718386
FECHA_NACM             307639       47.393605
IDCLASADMI              37178        5.727491
CODPTORE                 4091        0.630243
CODMUNRE                 4091        0.630243
AREA_RES                 3987        0.614221
No description has been provided for this image
In [28]:
duplicate_info18 = check_uniqueness(nac2018_data)
Unicidad: Detección de Duplicados
Número de duplicados: 1313
Porcentaje de duplicados: 0.20%

Registros duplicados (primeras 5 filas):
      COD_DPTO  COD_MUNIC  AREANAC  SIT_PARTO OTRO_SIT  SEXO  PESO_NAC  \
469          8          1        1          1      NaN     1         6   
479         66          1        1          1      NaN     2         3   
522         54          1        1          1      NaN     1         3   
533          8          1        1          1      NaN     1         6   
1255         5          1        1          1      NaN     1         5   

      TALLA_NAC   ANO  MES  ...  AREA_RES  N_HIJOSV  FECHA_NACM  N_EMB  \
469           5  2018    1  ...       1.0         1         NaN      1   
479           4  2018    1  ...       1.0         5  23/12/2010      4   
522           4  2018    1  ...       1.0         5  09/12/2015      4   
533           5  2018    1  ...       1.0         1         NaN      1   
1255          4  2018    1  ...       1.0         3  12/04/2012      2   

      SEG_SOCIAL  IDCLASADMI  EDAD_PADRE  NIV_EDUP  ULTCURPAD  PROFESION  
469            2         2.0          21        99         99          1  
479            1         1.0          32         5         11          1  
522            1         1.0          32         5         11          1  
533            2         2.0          28        99         99          1  
1255           1         1.0          30         4         11          1  

[5 rows x 38 columns]
In [29]:
validity_issues18 = check_validity_auto(nac2018_data)
COD_MUNIC - Valores fuera de rango detectados: 51142
Rango válido detectado: (-396.5, 663.5)
Valores fuera de rango: [756 758 821 887 847 835 708 837 698 834 843 854 675 686 875 777 679 670
 861 895 759 754 707 736 693 710 899 865 807 890 744 753 820 755 683 743
 689 877 665 855 794 790 874 685 687 838 672 860 815 680 856 763 810 828
 713 873 682 893 869 770 863 688 664 836 750 773 720 885 785 814 858 809
 761 699 799 692 780 789 824 819 757 667 787 797 711 673 862 980 823 742
 892 678 791 668 817 867 669 800 674 849 798 718 745 769 676 878 671 788
 822 870 884 701 883 886 872 684 760 804 845 842 717 801 690 960 871 792
 771 776 786 696 740 889 894 681 703 764 772 762 666 697 832 702 793 839
 779 841 816]

AREANAC - Valores fuera de rango detectados: 10288
Rango válido detectado: (1.0, 1.0)
Valores fuera de rango: [3 2]

SIT_PARTO - Valores fuera de rango detectados: 10740
Rango válido detectado: (1.0, 1.0)
Valores fuera de rango: [2 3]

PESO_NAC - Valores fuera de rango detectados: 41404
Rango válido detectado: (3.5, 7.5)
Valores fuera de rango: [8 3 1 2 9]

TALLA_NAC - Valores fuera de rango detectados: 5518
Rango válido detectado: (2.5, 6.5)
Valores fuera de rango: [9 2 1]

ATEN_PAR - Valores fuera de rango detectados: 10701
Rango válido detectado: (1.0, 1.0)
Valores fuera de rango: [5 4 6 3 2]

T_GES - Valores fuera de rango detectados: 139315
Rango válido detectado: (4.0, 4.0)
Valores fuera de rango: [3 2 5 6 9 1]

T_GES_AGRU_CIE - Valores fuera de rango detectados: 68065
Rango válido detectado: (4.0, 4.0)
Valores fuera de rango: [3 2 5 6 9 1]

NUMCONSUL - Valores fuera de rango detectados: 35172
Rango válido detectado: (0.5, 12.5)
Valores fuera de rango: [ 0 15 13 14 16 18 24 17 20 99 22 19 25 23 21]

TIPO_PARTO - Valores fuera de rango detectados: 203
Rango válido detectado: (-0.5, 3.5)
Valores fuera de rango: [4]

MUL_PARTO - Valores fuera de rango detectados: 11398
Rango válido detectado: (1.0, 1.0)
Valores fuera de rango: [2 3 4 9]

APGAR1 - Valores fuera de rango detectados: 32424
Rango válido detectado: (6.5, 10.5)
Valores fuera de rango: [99  6  3  4  5  1  2]

APGAR2 - Valores fuera de rango detectados: 20460
Rango válido detectado: (7.5, 11.5)
Valores fuera de rango: [99  7  3  6  5  2  4  1]

IDHEMOCLAS - Valores fuera de rango detectados: 15195
Rango válido detectado: (0.5, 4.5)
Valores fuera de rango: [9]

IDFACTORRH - Valores fuera de rango detectados: 43720
Rango válido detectado: (1.0, 1.0)
Valores fuera de rango: [9 2]

IDPERTET - Valores fuera de rango detectados: 53427
Rango válido detectado: (6.0, 6.0)
Valores fuera de rango: [1 5 2 3 4]

EDAD_MADRE - Valores fuera de rango detectados: 815
Rango válido detectado: (0.0, 8.0)
Valores fuera de rango: [ 9 99]

NIV_EDUM - Valores fuera de rango detectados: 27592
Rango válido detectado: (-3.0, 13.0)
Valores fuera de rango: [99]

ULTCURMAD - Valores fuera de rango detectados: 27598
Rango válido detectado: (-4.0, 20.0)
Valores fuera de rango: [99]

CODPRES - Valores fuera de rango detectados: 3987
Rango válido detectado: (170.0, 170.0)
Valores fuera de rango: [862 604 218 191  76 188 533 530 724 528 174 591 608 704  32 152 670 840
 858 484 548 887 136 222]

AREA_RES - Valores fuera de rango detectados: 140589
Rango válido detectado: (1.0, 1.0)
Valores fuera de rango: [3. 2. 9.]

N_HIJOSV - Valores fuera de rango detectados: 52099
Rango válido detectado: (-0.5, 3.5)
Valores fuera de rango: [ 6  4  7  5 12  8  9 11 10 14 13 15 99 19 17 18 20]

N_EMB - Valores fuera de rango detectados: 8341
Rango válido detectado: (-2.0, 6.0)
Valores fuera de rango: [10  7  8 12  9 99 11 13 16 14 15 17 18]

SEG_SOCIAL - Valores fuera de rango detectados: 37377
Rango válido detectado: (-0.5, 3.5)
Valores fuera de rango: [5 4 9]

IDCLASADMI - Valores fuera de rango detectados: 14627
Rango válido detectado: (-0.5, 3.5)
Valores fuera de rango: [5. 4. 9.]

EDAD_PADRE - Valores fuera de rango detectados: 22700
Rango válido detectado: (7.5, 51.5)
Valores fuera de rango: [999  66  53  56  52  58  55  69  54  64  62  60  61  59  57  73  63  65
  67  72  75  70  80  74  68  71  79  90  77  91  78  76]

NIV_EDUP - Valores fuera de rango detectados: 72429
Rango válido detectado: (-4.5, 15.5)
Valores fuera de rango: [99]

ULTCURPAD - Valores fuera de rango detectados: 72433
Rango válido detectado: (-4.0, 20.0)
Valores fuera de rango: [99]

PROFESION - Valores fuera de rango detectados: 5818
Rango válido detectado: (1.0, 1.0)
Valores fuera de rango: [4 3 5 2]

OTRO_SIT - Valores no válidos detectados: 647287
Valores válidos detectados: ['AMBULANCIA TAB' 'CARRETERA' 'VIA PUBLICA' 'CALLE' 'AMBULANCIA'
 'VEHICULO' 'AVENIDA' 'PUESTO DE SALUD ORIHUECA' 'CARRO'
 'VEHICULO PARTICULAR' 'LANCHA' 'ambulancia' 'finca'
 'VEREDA SALINAS MUNICIPIO DE MO' 'EN CARRETERA CERCA A ALTAMIRA'
 'vehiculo' 'CLINICA BUCARAMANGA' 'CANOA' 'PARTO EN LA CALLE'
 'AMBULANCIA RUMBO A INSTITUCION' 'EL DOMICILIO' 'TAXI' 'HOTEL'
 'EN CARRO PARTICULAR AL LLEGAR' 'Ambulancia'
 'CENTRO DE SALUD DE PLAYA RICA' 'AMBULANCIA BASICA' 'CASA' 'AUTOMOVIL'
 'via publica' 'CENTRO DE SALUD DE PAPYAL' 'AMBULANCIA INSTITUCIONAL'
 'VIA SAN JUAN VIANI' 'EN LA HUERTA' 'LA VIA PUBLICA'
 'AMBULANCIA ESE HOSPITAL SAN JO' 'GUAITARILLA' 'EN UN CARRO' 'HOGAR'
 'PUESTO DE SALUD' 'VERDA LAS DELICIAS' 'DEBAJO DE UN PUENTE'
 'centro de salud charco largo l' 'vía pública'
 'VEHICULO PARTICULAR CARRO' 'AMBULANCIA DE TRASLADO VITAL B'
 'TRANSMILENIO' 'VIA PUBLICA DE LA VEREDA ALTO '
 'BAÑO DEL HOSPITAL REGIONAL DE' 'AMBULANCIA MEDICALIZADA'
 'RESGUARDO CAÑAVERAL' 'MEDIO DE TRASPORTE ACUATICO (C' 'BOTE' 'RANCHERIA'
 'VEREDA ARRAYANES' 'AMBULANCIA  LUEGAR CACERI' 'SALA DE ESPERA' 'BARCO'
 'AMBULACIA' 'BONGO' 'BUS INTERMUNICIPAL TERMINAL DE'
 'TRANSLADO EN AMBULANCIA' 'VEREDA EN CASA' 'DOMICILIO'
 'AMBULANCIA  VIA PUBLICA' 'PUESTO DE SALUD DE RIO FRIO'
 'BARRIO PRIMERA DE MAYO' 'MUELLE DE PUERTO NARIÑO AMAZON'
 'AMBULANCIA DE LA INSTITUCION' 'comunidad' 'BUSETA' 'Automovil'
 'COMUNIDAD INDIGENA CUSAY LA CO' 'TRANSPORTE' 'carretera'
 'V/ BRILLANTE SANTA CLARA' 'VIA LA CRISTALINA PUERTO GAITA'
 'CENTRO PENITENCIARIO' 'ASOCIACION DE PARTERAS ASOPARU' 'taxi' 'BUS'
 'HOSPITAL BOLOMBOLO' 'A LA INTERPERIE' 'AMBULANCIA GUALANDAY'
 'CENTRO DE SALUD' 'PANGA' 'AMBULANCIA .' 'EXTRAHOSPITALARIO(TAXI)'
 'EN LA AMBULANCIA' 'VEREDA BAJO INGLES' 'LA PLAYA' 'EN UN TAXI'
 'VIA PUBLICA(TAXI)' 'CAMION-VIA PUBLICA' 'carro' 'utomovil'
 'CARRETERA VEREDAL' 'CAMIONETA' 'VEHICULO AMBULANCIA'
 'PATRULLA DE POLICIA' 'en la via' 'TRANSPORTE VÍA HOSPITAL'
 'MEDIO DE TRANSPORTE - TAXI' 'vehiculo particular' 'UN TAXI' 'carreteras'
 'ambulancia de zona bananera' 'CASA DE PARTERA'
 'ASOCIACION D EPARTERAS ASOPARU' 'VEHICULO AUTOMOTOR'
 'UN TAXI MIENTRAS SE TRASLADABA' 'CENTRO DE SALUD DE PAPAYAL' 'ALBERGUE'
 'ESPOSO' 'AMBULANCIA BARRIO CALOTO' 'PEÑAS COLORADAS' 'TIENDA'
 'CASA DE PLANTAS MEDICINALES SI' 'TAXI EN BARRIO MANCERA' 'EN LA VIA'
 'RIO VERDE' 'BARRIO PALERMO' 'EN EL TRABAJO' 'VIA CHACHAGUI'
 'VIA PUBLICA DURANTE TRASLADO E' 'FINCA BUENOS AIRES' 'en ambulancia'
 'SIN ESTABLECER' 'AUTOPISTA' 'CENTRO DE SALUD EL VARAL' 'MICROPUESTO'
 'CARRO DE TRANSPORTE' 'LA CARRETERA' 'AMBULANACIA' 'PUESTODE SALUD IRRA'
 'Vía Pública' 'CARRETERA VIA ISABI' 'SIETE HERMANA'
 'AMBULANCIA DE HOSPITAL SAN CAR' 'PUENTE NACIONAL' 'EN UNA CANOA'
 'VIA PRINCIPAL VEREDA PALMAR AR' 'VEHICULO DE TRANSPORTE ESCOLAR'
 'EN AMBULANCIA' 'SAN ROQUE EN LA VIA' 'CAMINO A LA CLINICA'
 'CLINICA RENACER' 'TUMNURAO' 'COMUNIDAD' 'PUESTO DE SALUD DEL DOCE'
 'CASA DE MADRE' 'en carretera hacia el pueblo'
 'PUESTO DE SALUD SAN ANTONIO' 'ALMACEN DE ROPA' 'CASA DOMICILIO'
 'CARETERA' 'VIA  SANTA MARTA A LA PLATA HU' 'VIA CARRETEABLE'
 'CARRETERA A LA MIRANDA' 'TRASLADO INSTITUCIONAL' 'ambulancia.'
 'EXTRAINSTITUCIONAL' 'VEHÍCULO (TAXI)' 'DISPENSARIO MEDICO DE BUCARAMA'
 'casa de partaera' 'CAMPO ABIERTO' 'TRASLADO EN AMBULANCIA' 'EN CARRO'
 'PARTO EN AMBULANCIA EN LA VIA ' 'VIA PUBLICA EN UN AUTOMOVIL'
 'RESGUARDO INDIGENA CUSAY LA CO' 'COMUNIDAD BARRANCO COLORADO'
 'BOTE  POR RIO INIRIDA' 'VIA MERCADERES - MOJARRAS'
 'AMBULANCIA DE CANDELARIA' 'QUEBRADA ARRIBA  RURAL DISPERS' 'casa'
 'VIA PUBLICA   - AMBULANCIA' 'RIO MAGDALENA' 'PATIO BONITO'
 'CARRO PARTICULAR' 'EN UNA LANCHA' 'BUS ESCALERA' 'Carretera' 'CARCEL'
 'VEREDA PUERTO NARE' 'AMBULANCIA DE PRIMER NIVEL' 'CARROTAXI' 'SOLA'
 'EN LA AMBULANCIA DONDE ERA REM' 'bongo' 'ASOCIACION DE PATERAS ASOPARUP'
 'VIA RURAL' 'EN CASA BAJO LA ARENOSA' 'Via publica'
 'CARRETERA SOACHA CUNDINAMARCA' 'CARRO DE BOMBEROS.' 'VEREDA EL LORO'
 'AMBULANCIA EN VEREDA SISA EN V' 'TRANSPORTE FLUVIAL'
 'ALVERGUE SUKURAME SAS' 'CENTOR DE SALUD CARMELO' 'VIA PUBLICA TAXI'
 'VEHICULO DE SERVICIO PUBLICO' 'VEREDA LA ARGELIA' 'SIN INFORMACIÓN'
 'PARTO EN AMBULANCIA EN EL CORR' 'PATRULLA POLICIA'
 'puesto de salud palmor' 'AMBULÑANCIA' 'EMBARCACION TRASNPORTE FLUVIAL'
 'pie de cerro' 'CASA DE AMIGOS' 'FUERA DE VIVIENDA' 'PASTO - HUDN'
 'nacido en riosucio choco  en c' 'EN UN BONGO RIO META' 'BAÑO'
 'ASOCIACION  DE PARTERAS ASOPAR' 'DURANTE EL TRASLADO EN AMBULAN'
 'CARRETERA VEREDA AGUAS CLARAS' 'AMBULANCIA DE TRASLADO'
 'DURANTE EL TRASLADO EN EL BOTE' 'VIA PULBICA' 'IPSI APONTE'
 'AMBULANCIA INSTITUCIONAL CABEC' 'ambulanci' 'CENTRO DE SLUD'
 'HRD SEDE SANTA ROSA DE VITERBO' 'VIA PUBLICA EN TAXI'
 'CENTRO DE SALUD DE PAPAPAYAL' 'EXTRA INSTIRUCIONAL' 'VEREDA PUERTO VEGA'
 'CARRETERA ORTEGA CAJIBIO' 'VIA RIO BLANCO - LA SIERRA'
 'VEHICULO EN VIA PUBLICA' 'RESGUARDO INDIGENA'
 'casa via labateca a toledo' 'AUTOMOVIL EN VIA PUBLICA' 'calle'
 'FINCA EL DIAMANTE' 'EN LA  VEREDA' 'VIA PEQUE -MEDELLIN'
 'CENTRO DE SALUD HERRERA' 'EN VEHICULO' 'CENTRO DE SALUD INSPECION YURA'
 'AMBULANCIA VIA TIBU-CUCUTA' 'PARQUEADERO DE LA IPS' 'EXTRAHOSPITALARIO'
 'HOTEL CENTRAL' 'EN LA AMBULANCIA LLEGANDO A SO' 'CASA DE LA PARTERA'
 'EMBARCACION' 'COMUNIDAD CALLE' 'LAS CAMORRAS' 'SECTOR MONTAÑOSO-CAMINO'
 'DENTRO DE VEHICULO EN VEREDA L' 'VIA PUBLICA RURAL' 'puesto de salud'
 'HABITACION CLINICA' 'VIA PUBLICA EL VIGIA - ARAUQUI'
 'AMBULANCIA VIA PUBLICA' 'COMUNDAD INDIGENA' 'PLAYA DE RIO'
 'TRANSPORTE PUBLICO' 'ambulacia' 'DISPENSARIO LA MISION' 'UN CARRO'
 'AMBULANCIA  DE TUMACO' 'CARRETERA A 1 KM DE LA CLINICA'
 'TAXI VIA PUBLICA' 'CHALUPA' 'EN UN CARRO  ENTRANDO AL PUEBL' 'MADRE'
 'resguardo indigena' 'INQUILINATO' 'CARRETERA VIA  RAGONVALIA'
 'SE DESCONOCE' 'EN BAÑO DE LA INSTITUCION DE S' 'BAJIRA' 'zona rural'
 'CAMINO' 'via' 'AMBULANCIA VIA PALERMO - NEIVA' 'PUERTO'
 'PUESTO DE SALUD DE BATA' 'MOTOTAXI' 'HOSPITAL SAN SEBASTIAN' 'URIBE'
 'RESTAURANTE PROFAMILIA' 'EL CERREJON' 'CALLE VEREDA CARRASPOZAL'
 'CENTRO DE SALUD COLSANITA' 'AVIONETA AMBULANCIA'
 'AMBULANCIA ESE DAVID MOLINA MU' 'carretera via el carmelo' 'UN VEHICULO'
 'AMBULANCIA TRASLADO FACA' 'ASCENSOR' 'COLSANITAS EL CERREJON'
 'HOSPEDAJE' 'FUERA DE LA VIVIENDA' 'CENTRO DE SALUD SOLITA'
 'CLINISANITAS PUERTO BOLIVAR' 'FUNDACION LAZOS DE AMOR'
 'AMBULANCIA TRANSLADO' 'vehículo' 'CENTRODE SALUD SANTO ECCEHOMO '
 'IPS SOLITA' 'CAPS' 'V. CALIYACO' 'EN TAXI'
 'EN EL DOMICILIO VEREDA EL DURA' 'VEHICULO DE TRASPORTE PUBLICO'
 'Vehículo de transporte' 'comunidad yuri' 'VEHICULO DE TRANSPORTE'
 'PUESTO DE SALUD LA GRANJA' 'Carretera dispersa rural'
 'HOSPITALA SAN ANTONIO DE SESQU' 'IGLESIA SAN CALIXTO ENCONTRADO'
 'EN AUTOMOVIL' 'CASA COMUNAL' 'En panga' 'PARTO EN AMBULANCIA'
 'VEREDA LAS AHUYAMAS' 'VEHICULO WAZ' 'SERVICIO PUBLICO'
 'EN EL CARRO CAMINO AL HOSPITAL' 'EN LA CALLE'
 'AMBULANCIA SEDE EL PAUJIL' 'CARRO DE LA POLICIA' 'DESLIZADORA'
 'CARRETERA DE LA VEREDA' 'SU DOMICILIO VEREDA MERCHAN SA' 'Via Publica'
 'EL CHORRO' 'VIA AL HOSPITAL' 'AMBULANCIA  FLUVIAL' 'CARRETERA MUNICIPAL'
 'AMBUlANCIA' 'BARRIO SIMON BOLIVAR' 'FLOTA' 'ALBERGUE SUKURAME'
 'durante traslado' 'casa de partera' 'EN LA CARRETERA'
 'VEREDA SANTA CLARA' 'CASERIO' 'ESTACION DE POLICIA'
 'AV PANAMERICANA QUILCACE' 'CARRETERA MUNICIPIO DE ROSAS'
 'CENTRO DE ATENCION DE EMPRESA ' 'VEREDA ALTO DE LOS AGUACATES' 'FINCA'
 'VEREDA CAÑO BACATI' 'EN CASA' 'AVION' 'CON INDIGENA'
 'A LA ORILLA DEL RIO' 'MAMA' 'VEREDA PABOLA' 'ABANDONADO' 'LA SABANA'
 'EN LA PLAYA' 'BARRANCO CEIBA' 'EN UNA TERMINAL DE TRANSPORTES'
 'DOMICILIO PARTERA' 'AMBULANCIA LLEGANDO A TUNJA BO'
 'AMBULANCIA DE LOS BOMBEROS' 'CASA DE HABITACION' 'automovil particular'
 'VIA PUBLICA DENTRO DE UN BUS' 'Carro' 'DESCONOCIDO'
 'ASOCION DE PARTERAS ASOPARUPA' 'PARCELA' 'LA AMBULANCIA'
 'centro de salud de papayal' 'LA CASA' 'LLEGANDO A LA ESE CENTRO UNO P'
 'Ambulancia medicalizada' 'cabildo indigena' 'VEHICULO PUBLICO'
 'SIN INFORMACION' 'SIN ALTERACION' 'VEREDA GUASIMAL' 'CANDELARIA'
 'DROGUERÍA' 'VEREDA EL BRAZO' 'PUERTO BOLIVAR' 'SIN INFORMACÍON'
 'SININFORMACIÓN' 'en casa' 'sentro de salud charco largo l'
 'CENTRO DE SALUD PTO BOLIVAR' 'PS LAGUNA COLORADA' 'SIN INFROMACION'
 'TRASPORTE PUBLICO' 'VIVIENDA' 'PASTO' 'CHAGRA'
 'EN AMBULANCIA DURANTE TRASLADO' 'CAMINO AL HOSPITAL  (TAXI )'
 'VEHICULO TAXI' 'Casa de una partera' 'VIA PUBLICA KM 18 VIA LAS CONC'
 'domicilio  donde  reside' 'EN AMBULANCIA VIA SANTA ROSA D'
 'Vereda Matecaña' 'ATENDIDO POR 1-2-3' 'RESIDENCIA']
Valores no válidos: [nan]

FECHA_NACM - Valores no válidos detectados: 307639
Valores válidos detectados: ['13/08/2014' '15/02/2011' '21/06/2011' ... '19/11/1995' '26/10/1999'
 '18/10/1994']
Valores no válidos: [nan]

In [30]:
incosistences18 = check_consistency(nac2018_data)
Todos los tipos de datos son consistentes con los esperados.
C:\Users\PC2\AppData\Local\Temp\ipykernel_7124\604307692.py:92: DeprecationWarning: is_categorical_dtype is deprecated and will be removed in a future version. Use isinstance(dtype, pd.CategoricalDtype) instead
  elif pd.api.types.is_categorical_dtype(dataset[col]):

Nacimientos año 2021¶

In [31]:
nac2021_data.shape
Out[31]:
(616914, 39)
In [32]:
nac2021_data.head()
Out[32]:
COD_DPTO COD_MUNIC AREANAC SIT_PARTO OTRO_SIT SEXO PESO_NAC TALLA_NAC ANO MES ... N_HIJOSV FECHA_NACM N_EMB SEG_SOCIAL IDCLASADMI EDAD_PADRE NIV_EDUP ULTCURPAD PROFESION TIPOFORMULARIO
0 47 245 1 1 NaN 2 6 5 2021 1 ... 3 03/04/2013 3 1 1.0 37 4 11 1.0 1
1 47 245 1 1 NaN 1 5 4 2021 1 ... 3 17/01/2009 5 2 2.0 35 9 5 1.0 1
2 47 245 1 1 NaN 1 6 5 2021 2 ... 1 NaN 2 2 2.0 27 3 9 1.0 1
3 47 245 1 1 NaN 2 6 4 2021 1 ... 2 16/08/2017 2 2 2.0 40 4 11 1.0 1
4 13 1 1 1 NaN 2 6 5 2021 2 ... 2 22/05/2014 2 3 5.0 32 9 5 1.0 1

5 rows × 39 columns

In [33]:
nac2021_data.info()
<class 'pandas.core.frame.DataFrame'>
RangeIndex: 616914 entries, 0 to 616913
Data columns (total 39 columns):
 #   Column          Non-Null Count   Dtype  
---  ------          --------------   -----  
 0   COD_DPTO        616914 non-null  int64  
 1   COD_MUNIC       616914 non-null  int64  
 2   AREANAC         616914 non-null  int64  
 3   SIT_PARTO       616914 non-null  int64  
 4   OTRO_SIT        1444 non-null    object 
 5   SEXO            616914 non-null  int64  
 6   PESO_NAC        616914 non-null  int64  
 7   TALLA_NAC       616914 non-null  int64  
 8   ANO             616914 non-null  int64  
 9   MES             616914 non-null  int64  
 10  ATEN_PAR        616914 non-null  int64  
 11  T_GES           616914 non-null  int64  
 12  T_GES_AGRU_CIE  616914 non-null  int64  
 13  NUMCONSUL       616914 non-null  int64  
 14  TIPO_PARTO      616914 non-null  int64  
 15  MUL_PARTO       616914 non-null  int64  
 16  APGAR1          616914 non-null  int64  
 17  APGAR2          616914 non-null  int64  
 18  IDHEMOCLAS      616914 non-null  int64  
 19  IDFACTORRH      616914 non-null  int64  
 20  IDPERTET        616914 non-null  int64  
 21  EDAD_MADRE      616914 non-null  int64  
 22  EST_CIVM        616914 non-null  int64  
 23  NIV_EDUM        616914 non-null  int64  
 24  ULTCURMAD       616914 non-null  int64  
 25  CODPRES         616914 non-null  int64  
 26  CODPTORE        608083 non-null  float64
 27  CODMUNRE        608083 non-null  float64
 28  AREA_RES        608086 non-null  float64
 29  N_HIJOSV        616914 non-null  int64  
 30  FECHA_NACM      344669 non-null  object 
 31  N_EMB           616914 non-null  int64  
 32  SEG_SOCIAL      616914 non-null  int64  
 33  IDCLASADMI      551221 non-null  float64
 34  EDAD_PADRE      616914 non-null  int64  
 35  NIV_EDUP        616914 non-null  int64  
 36  ULTCURPAD       616914 non-null  int64  
 37  PROFESION       616847 non-null  float64
 38  TIPOFORMULARIO  616914 non-null  int64  
dtypes: float64(5), int64(32), object(2)
memory usage: 183.6+ MB
In [34]:
nac2021_data.describe()
Out[34]:
COD_DPTO COD_MUNIC AREANAC SIT_PARTO SEXO PESO_NAC TALLA_NAC ANO MES ATEN_PAR ... AREA_RES N_HIJOSV N_EMB SEG_SOCIAL IDCLASADMI EDAD_PADRE NIV_EDUP ULTCURPAD PROFESION TIPOFORMULARIO
count 616914.000000 616914.000000 616914.000000 616914.000000 616914.000000 616914.000000 616914.000000 616914.0 616914.000000 616914.000000 ... 608086.000000 616914.000000 616914.000000 616914.000000 551221.000000 616914.000000 616914.000000 616914.000000 616847.000000 616914.000000
mean 34.704174 172.189263 1.047105 1.029485 1.487908 5.736197 4.611957 2021.0 6.640434 1.108868 ... 1.427025 1.974295 2.151569 1.999157 1.677425 37.662870 13.799131 16.591985 1.054184 1.000109
std 26.577299 266.100926 0.290024 0.182467 0.500026 1.115809 0.720720 0.0 3.413818 0.666225 ... 0.772575 1.578043 1.700261 1.147784 0.662156 86.917286 28.100663 27.273895 0.438998 0.010421
min 5.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 2021.0 1.000000 1.000000 ... 1.000000 1.000000 1.000000 1.000000 1.000000 13.000000 1.000000 0.000000 1.000000 1.000000
25% 11.000000 1.000000 1.000000 1.000000 1.000000 5.000000 4.000000 2021.0 4.000000 1.000000 ... 1.000000 1.000000 1.000000 1.000000 1.000000 24.000000 3.000000 5.000000 1.000000 1.000000
50% 23.000000 1.000000 1.000000 1.000000 1.000000 6.000000 5.000000 2021.0 7.000000 1.000000 ... 1.000000 2.000000 2.000000 2.000000 2.000000 29.000000 4.000000 9.000000 1.000000 1.000000
75% 54.000000 290.000000 1.000000 1.000000 2.000000 6.000000 5.000000 2021.0 10.000000 1.000000 ... 2.000000 2.000000 3.000000 2.000000 2.000000 35.000000 8.000000 11.000000 1.000000 1.000000
max 99.000000 980.000000 3.000000 3.000000 3.000000 9.000000 9.000000 2021.0 12.000000 6.000000 ... 9.000000 99.000000 99.000000 9.000000 5.000000 999.000000 99.000000 99.000000 5.000000 2.000000

8 rows × 37 columns

In [35]:
plot_numeric_distributions(nac2021_data)
No description has been provided for this image
In [36]:
plot_top_categories(nac2021_data, 'OTRO_SIT')
plot_top_categories(nac2021_data, 'FECHA_NACM')
No description has been provided for this image
No description has been provided for this image
In [37]:
plot_boxplots_and_detect_outliers(nac2021_data)
COD_DPTO - Datos atípicos detectados: 0
COD_MUNIC - Datos atípicos detectados: 46180
Valores atípicos: [758 758 758 ... 800 787 787]

AREANAC - Datos atípicos detectados: 16960
Valores atípicos: [2 2 3 ... 3 3 3]

SIT_PARTO - Datos atípicos detectados: 16747
Valores atípicos: [2 2 2 ... 3 3 2]

SEXO - Datos atípicos detectados: 0
PESO_NAC - Datos atípicos detectados: 41526
Valores atípicos: [8 8 3 ... 9 9 9]

TALLA_NAC - Datos atípicos detectados: 8356
Valores atípicos: [9 9 9 ... 9 9 9]

ANO - Datos atípicos detectados: 0
MES - Datos atípicos detectados: 0
ATEN_PAR - Datos atípicos detectados: 16861
Valores atípicos: [5 5 5 ... 5 5 5]

T_GES - Datos atípicos detectados: 153956
Valores atípicos: [3 3 3 ... 6 6 6]

T_GES_AGRU_CIE - Datos atípicos detectados: 74054
Valores atípicos: [3 3 3 ... 6 6 6]

NUMCONSUL - Datos atípicos detectados: 5289
Valores atípicos: [99 15 99 ... 99 99 99]

TIPO_PARTO - Datos atípicos detectados: 201
Valores atípicos: [4 4 4 4 4 9 9 9 9 9 9 9 9 9 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 9 9 4 4 4
 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 9 9 9 9 9 9 9 4 4 9 9 9 9 9 9
 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 4 4 4 4 4 4 4 4 4 4 9 9 9 9 9 9 9 9 9 9 9 9
 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9]

MUL_PARTO - Datos atípicos detectados: 10836
Valores atípicos: [2 2 2 ... 9 3 4]

APGAR1 - Datos atípicos detectados: 38135
Valores atípicos: [ 3  5  4 ... 99 99 99]

APGAR2 - Datos atípicos detectados: 27345
Valores atípicos: [ 7  1  7 ... 99 99 99]

IDHEMOCLAS - Datos atípicos detectados: 15090
Valores atípicos: [9 9 9 ... 9 9 9]

IDFACTORRH - Datos atípicos detectados: 43287
Valores atípicos: [2 9 2 ... 9 9 9]

IDPERTET - Datos atípicos detectados: 59922
Valores atípicos: [3 5 5 ... 1 1 1]

EDAD_MADRE - Datos atípicos detectados: 481
Valores atípicos: [ 9  9  9  9  9  9  9  9  9  9  9  9  9  9  9  9  9  9  9  9  9  9  9  9
  9  9  9  9  9  9  9  9  9  9  9  9  9  9  9  9  9  9  9  9  9  9  9  9
  9  9  9  9  9  9  9  9  9  9 99 99 99 99 99 99 99 99 99  9  9 99 99 99
 99 99 99 99 99  9  9 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99
 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99
 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99
 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99
 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99
 99 99 99 99 99 99 99 99  9 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99
 99 99 99 99 99 99 99 99 99 99 99  9  9  9  9  9  9  9 99 99  9  9  9  9
  9  9  9  9  9  9  9  9  9  9  9  9  9  9  9  9  9  9  9  9  9  9 99 99
 99 99  9 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99  9 99
 99 99 99 99 99 99 99 99 99 99 99  9  9 99  9  9  9  9  9  9  9  9  9  9
  9  9  9  9  9  9  9  9 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99
 99  9 99 99 99 99 99 99 99 99 99 99  9  9  9  9  9  9 99 99 99  9 99 99
 99 99 99  9  9 99 99 99  9  9  9  9  9  9  9 99 99 99  9  9  9  9  9  9
  9  9  9  9  9  9 99 99  9  9  9 99 99 99 99 99  9 99 99  9 99 99 99 99
 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99
 99 99 99 99 99 99 99 99 99 99 99 99 99  9  9  9 99 99 99 99 99 99 99 99
 99 99 99  9 99 99 99 99 99 99  9  9  9  9  9  9  9  9  9  9  9  9  9  9
  9]

EST_CIVM - Datos atípicos detectados: 0
NIV_EDUM - Datos atípicos detectados: 20705
Valores atípicos: [99 99 99 ... 99 99 99]

ULTCURMAD - Datos atípicos detectados: 20705
Valores atípicos: [99 99 99 ... 99 99 99]

CODPRES - Datos atípicos detectados: 8828
Valores atípicos: [862 862 862 ... 530 530 862]

CODPTORE - Datos atípicos detectados: 0
CODMUNRE - Datos atípicos detectados: 0
AREA_RES - Datos atípicos detectados: 3
Valores atípicos: [9. 9. 9.]

N_HIJOSV - Datos atípicos detectados: 55145
Valores atípicos: [4 4 4 ... 5 4 5]

N_EMB - Datos atípicos detectados: 8337
Valores atípicos: [ 7  7  7 ... 99 99 99]

SEG_SOCIAL - Datos atípicos detectados: 65845
Valores atípicos: [5 5 5 ... 9 9 5]

IDCLASADMI - Datos atípicos detectados: 10179
Valores atípicos: [5. 5. 5. ... 5. 5. 5.]

EDAD_PADRE - Datos atípicos detectados: 12584
Valores atípicos: [ 58  56 999 ... 999 999 999]

NIV_EDUP - Datos atípicos detectados: 60130
Valores atípicos: [99 99 99 ... 99 99 99]

ULTCURPAD - Datos atípicos detectados: 60137
Valores atípicos: [99 99 99 ... 99 99 99]

PROFESION - Datos atípicos detectados: 10392
Valores atípicos: [5. 5. 5. ... 5. 5. 5.]

TIPOFORMULARIO - Datos atípicos detectados: 67
Valores atípicos: [2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2]

No description has been provided for this image
Out[37]:
{'COD_DPTO': array([], dtype=int64),
 'COD_MUNIC': array([758, 758, 758, ..., 800, 787, 787], dtype=int64),
 'AREANAC': array([2, 2, 3, ..., 3, 3, 3], dtype=int64),
 'SIT_PARTO': array([2, 2, 2, ..., 3, 3, 2], dtype=int64),
 'SEXO': array([], dtype=int64),
 'PESO_NAC': array([8, 8, 3, ..., 9, 9, 9], dtype=int64),
 'TALLA_NAC': array([9, 9, 9, ..., 9, 9, 9], dtype=int64),
 'ANO': array([], dtype=int64),
 'MES': array([], dtype=int64),
 'ATEN_PAR': array([5, 5, 5, ..., 5, 5, 5], dtype=int64),
 'T_GES': array([3, 3, 3, ..., 6, 6, 6], dtype=int64),
 'T_GES_AGRU_CIE': array([3, 3, 3, ..., 6, 6, 6], dtype=int64),
 'NUMCONSUL': array([99, 15, 99, ..., 99, 99, 99], dtype=int64),
 'TIPO_PARTO': array([4, 4, 4, 4, 4, 9, 9, 9, 9, 9, 9, 9, 9, 9, 4, 4, 4, 4, 4, 4, 4, 4,
        4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4,
        4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4,
        4, 4, 4, 9, 9, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4,
        4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4,
        4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4,
        4, 9, 9, 9, 9, 9, 9, 9, 4, 4, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9,
        9, 9, 9, 9, 9, 9, 9, 9, 9, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 9, 9, 9,
        9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9,
        9, 9, 9], dtype=int64),
 'MUL_PARTO': array([2, 2, 2, ..., 9, 3, 4], dtype=int64),
 'APGAR1': array([ 3,  5,  4, ..., 99, 99, 99], dtype=int64),
 'APGAR2': array([ 7,  1,  7, ..., 99, 99, 99], dtype=int64),
 'IDHEMOCLAS': array([9, 9, 9, ..., 9, 9, 9], dtype=int64),
 'IDFACTORRH': array([2, 9, 2, ..., 9, 9, 9], dtype=int64),
 'IDPERTET': array([3, 5, 5, ..., 1, 1, 1], dtype=int64),
 'EDAD_MADRE': array([ 9,  9,  9,  9,  9,  9,  9,  9,  9,  9,  9,  9,  9,  9,  9,  9,  9,
         9,  9,  9,  9,  9,  9,  9,  9,  9,  9,  9,  9,  9,  9,  9,  9,  9,
         9,  9,  9,  9,  9,  9,  9,  9,  9,  9,  9,  9,  9,  9,  9,  9,  9,
         9,  9,  9,  9,  9,  9,  9, 99, 99, 99, 99, 99, 99, 99, 99, 99,  9,
         9, 99, 99, 99, 99, 99, 99, 99, 99,  9,  9, 99, 99, 99, 99, 99, 99,
        99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99,
        99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99,
        99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99,
        99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99,
        99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99,
        99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99,
        99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99,  9, 99, 99, 99,
        99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99,
        99, 99, 99, 99, 99, 99,  9,  9,  9,  9,  9,  9,  9, 99, 99,  9,  9,
         9,  9,  9,  9,  9,  9,  9,  9,  9,  9,  9,  9,  9,  9,  9,  9,  9,
         9,  9,  9,  9,  9,  9,  9, 99, 99, 99, 99,  9, 99, 99, 99, 99, 99,
        99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99,  9, 99, 99,
        99, 99, 99, 99, 99, 99, 99, 99, 99, 99,  9,  9, 99,  9,  9,  9,  9,
         9,  9,  9,  9,  9,  9,  9,  9,  9,  9,  9,  9,  9,  9, 99, 99, 99,
        99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99,  9, 99, 99,
        99, 99, 99, 99, 99, 99, 99, 99,  9,  9,  9,  9,  9,  9, 99, 99, 99,
         9, 99, 99, 99, 99, 99,  9,  9, 99, 99, 99,  9,  9,  9,  9,  9,  9,
         9, 99, 99, 99,  9,  9,  9,  9,  9,  9,  9,  9,  9,  9,  9,  9, 99,
        99,  9,  9,  9, 99, 99, 99, 99, 99,  9, 99, 99,  9, 99, 99, 99, 99,
        99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99,
        99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99,
        99, 99, 99,  9,  9,  9, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99,
         9, 99, 99, 99, 99, 99, 99,  9,  9,  9,  9,  9,  9,  9,  9,  9,  9,
         9,  9,  9,  9,  9], dtype=int64),
 'EST_CIVM': array([], dtype=int64),
 'NIV_EDUM': array([99, 99, 99, ..., 99, 99, 99], dtype=int64),
 'ULTCURMAD': array([99, 99, 99, ..., 99, 99, 99], dtype=int64),
 'CODPRES': array([862, 862, 862, ..., 530, 530, 862], dtype=int64),
 'CODPTORE': array([], dtype=float64),
 'CODMUNRE': array([], dtype=float64),
 'AREA_RES': array([9., 9., 9.]),
 'N_HIJOSV': array([4, 4, 4, ..., 5, 4, 5], dtype=int64),
 'N_EMB': array([ 7,  7,  7, ..., 99, 99, 99], dtype=int64),
 'SEG_SOCIAL': array([5, 5, 5, ..., 9, 9, 5], dtype=int64),
 'IDCLASADMI': array([5., 5., 5., ..., 5., 5., 5.]),
 'EDAD_PADRE': array([ 58,  56, 999, ..., 999, 999, 999], dtype=int64),
 'NIV_EDUP': array([99, 99, 99, ..., 99, 99, 99], dtype=int64),
 'ULTCURPAD': array([99, 99, 99, ..., 99, 99, 99], dtype=int64),
 'PROFESION': array([5., 5., 5., ..., 5., 5., 5.]),
 'TIPOFORMULARIO': array([2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
        2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
        2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
        2], dtype=int64)}
In [38]:
plot_correlation_matrix(nac2021_data)
No description has been provided for this image

Análisis de calidad de los datos.

In [39]:
missing_data21 = check_completeness(nac2021_data)
Completitud: Valores Faltantes
            Valores faltantes  Porcentaje (%)
OTRO_SIT               615470       99.765932
FECHA_NACM             272245       44.130138
IDCLASADMI              65693       10.648648
CODPTORE                 8831        1.431480
CODMUNRE                 8831        1.431480
AREA_RES                 8828        1.430994
PROFESION                  67        0.010861
No description has been provided for this image
In [40]:
duplicate_info21 = check_uniqueness(nac2021_data)
Unicidad: Detección de Duplicados
Número de duplicados: 698
Porcentaje de duplicados: 0.11%

Registros duplicados (primeras 5 filas):
      COD_DPTO  COD_MUNIC  AREANAC  SIT_PARTO OTRO_SIT  SEXO  PESO_NAC  \
279         44        847        3          2      NaN     1         9   
280         44        847        3          2      NaN     2         9   
281         44        847        3          2      NaN     2         9   
1261        44          1        1          1      NaN     1         4   
1317        44        430        3          2      NaN     1         9   

      TALLA_NAC   ANO  MES  ...  N_HIJOSV  FECHA_NACM  N_EMB  SEG_SOCIAL  \
279           9  2021   10  ...         1         NaN      1           2   
280           9  2021   11  ...         1         NaN      1           2   
281           9  2021   10  ...         1         NaN      1           2   
1261          4  2021    4  ...         2         NaN      1           1   
1317          9  2021    6  ...         1         NaN      1           2   

      IDCLASADMI  EDAD_PADRE  NIV_EDUP  ULTCURPAD  PROFESION  TIPOFORMULARIO  
279          2.0         999        99         99        5.0               1  
280          2.0         999        99         99        5.0               1  
281          2.0         999        99         99        5.0               1  
1261         1.0          30        99         99        1.0               1  
1317         2.0          74        99         99        5.0               1  

[5 rows x 39 columns]
In [41]:
validity_issues21 = check_validity_auto(nac2021_data)
COD_MUNIC - Valores fuera de rango detectados: 46180
Rango válido detectado: (-432.5, 723.5)
Valores fuera de rango: [758 770 847 820 742 823 780 744 832 836 980 849 894 873 855 810 771 798
 750 760 787 745 838 960 874 756 843 754 763 822 839 799 862 872 801 753
 867 817 835 899 861 776 785 885 791 797 898 807 871 793 759 740 814 842
 736 772 757 755 773 815 875 860 878 845 841 743 804 816 886 888 887 889
 895 777 800 794 883 884 834 809 786 821 892 865 869 828 788 863 890 824
 854 870 877 761 837 792 858 819 789 856 790 893]

AREANAC - Valores fuera de rango detectados: 16960
Rango válido detectado: (1.0, 1.0)
Valores fuera de rango: [2 3]

SIT_PARTO - Valores fuera de rango detectados: 16747
Rango válido detectado: (1.0, 1.0)
Valores fuera de rango: [2 3]

PESO_NAC - Valores fuera de rango detectados: 41526
Rango válido detectado: (3.5, 7.5)
Valores fuera de rango: [8 3 9 2 1]

TALLA_NAC - Valores fuera de rango detectados: 8356
Rango válido detectado: (2.5, 6.5)
Valores fuera de rango: [9 2 1]

ATEN_PAR - Valores fuera de rango detectados: 16861
Rango válido detectado: (1.0, 1.0)
Valores fuera de rango: [5 6 2 3 4]

T_GES - Valores fuera de rango detectados: 153956
Rango válido detectado: (4.0, 4.0)
Valores fuera de rango: [3 5 6 2 9 1]

T_GES_AGRU_CIE - Valores fuera de rango detectados: 74054
Rango válido detectado: (4.0, 4.0)
Valores fuera de rango: [3 5 6 2 9 1]

NUMCONSUL - Valores fuera de rango detectados: 5289
Rango válido detectado: (-2.0, 14.0)
Valores fuera de rango: [99 15 16 19 20 18 17 25 21 23 22 24]

TIPO_PARTO - Valores fuera de rango detectados: 201
Rango válido detectado: (-0.5, 3.5)
Valores fuera de rango: [4 9]

MUL_PARTO - Valores fuera de rango detectados: 10836
Rango válido detectado: (1.0, 1.0)
Valores fuera de rango: [2 3 4 9]

APGAR1 - Valores fuera de rango detectados: 38135
Rango válido detectado: (6.5, 10.5)
Valores fuera de rango: [ 3  5  4 99  6  1  2]

APGAR2 - Valores fuera de rango detectados: 27345
Rango válido detectado: (7.5, 11.5)
Valores fuera de rango: [ 7  1  6  3 99  4  5  2]

IDHEMOCLAS - Valores fuera de rango detectados: 15090
Rango válido detectado: (0.5, 4.5)
Valores fuera de rango: [9]

IDFACTORRH - Valores fuera de rango detectados: 43287
Rango válido detectado: (1.0, 1.0)
Valores fuera de rango: [2 9]

IDPERTET - Valores fuera de rango detectados: 59922
Rango válido detectado: (6.0, 6.0)
Valores fuera de rango: [3 5 1 2 4]

EDAD_MADRE - Valores fuera de rango detectados: 481
Rango válido detectado: (0.0, 8.0)
Valores fuera de rango: [ 9 99]

NIV_EDUM - Valores fuera de rango detectados: 20705
Rango válido detectado: (-3.0, 13.0)
Valores fuera de rango: [99]

ULTCURMAD - Valores fuera de rango detectados: 20705
Rango válido detectado: (-4.0, 20.0)
Valores fuera de rango: [99]

CODPRES - Valores fuera de rango detectados: 8828
Rango válido detectado: (170.0, 170.0)
Valores fuera de rango: [862 152  32  76  68 174  56 840 704 426 530 591 604 124 756 702 484 332
 270 192 891 533 218 188 548  36   4 214 196]

AREA_RES - Valores fuera de rango detectados: 3
Rango válido detectado: (-0.5, 3.5)
Valores fuera de rango: [9.]

N_HIJOSV - Valores fuera de rango detectados: 55145
Rango válido detectado: (-0.5, 3.5)
Valores fuera de rango: [ 4  6  7  5  9 12  8 10 11 15 13 14 99]

N_EMB - Valores fuera de rango detectados: 8337
Rango válido detectado: (-2.0, 6.0)
Valores fuera de rango: [ 7 11  9 10  8 12 15 13 99 14 17 16]

SEG_SOCIAL - Valores fuera de rango detectados: 65845
Rango válido detectado: (-0.5, 3.5)
Valores fuera de rango: [5 4 9]

IDCLASADMI - Valores fuera de rango detectados: 10179
Rango válido detectado: (-0.5, 3.5)
Valores fuera de rango: [5. 4.]

EDAD_PADRE - Valores fuera de rango detectados: 12584
Rango válido detectado: (7.5, 51.5)
Valores fuera de rango: [ 58  56 999  52  67  54  72  53  77  55  60  61  74  59  63  57  69  62
  65  71  68  66  64  70  78  79  80  75  73  76]

NIV_EDUP - Valores fuera de rango detectados: 60130
Rango válido detectado: (-4.5, 15.5)
Valores fuera de rango: [99]

ULTCURPAD - Valores fuera de rango detectados: 60137
Rango válido detectado: (-4.0, 20.0)
Valores fuera de rango: [99]

PROFESION - Valores fuera de rango detectados: 10392
Rango válido detectado: (1.0, 1.0)
Valores fuera de rango: [5. 2. 3. 4.]

TIPOFORMULARIO - Valores fuera de rango detectados: 67
Rango válido detectado: (1.0, 1.0)
Valores fuera de rango: [2]

OTRO_SIT - Valores no válidos detectados: 615470
Valores válidos detectados: ['AMBULANCIA' 'VIA PUBLICA' 'CENTRO DE SALUD DE PAPAYAL' 'AUTOMOVIL'
 'VEREDA' 'EN AMBULANCIA' 'EN TRASPORTE PARTICULAR' 'RANCHERIA'
 'AMBULANCIA.' 'VIA' 'CARRETERA' 'TRANSPORTE FLUVIAL'
 'clinica saludtotal  santa marta' 'TRANSPORTE ACUATICO'
 'MEDIO DE TRANSPORTE' 'DOMICILIO DE LA PACIENTE' 'VEHICULO PARTICULAR'
 'EN MOTOCARRO' 'carro' 'TAXI' 'CENTRO DE SALUD PAPAYAL'
 'ESTACION DE POLICIA' 'RANCHERIA JIPI' 'PUERTO BOLIVAR' 'GUAYAVITO'
 'Durante traslado en ambulancia' 'PUESTO DE SALUD'
 'RANCHERIA KM 52 VIA RIOHACHA.' 'CALLE' 'AMBULANCIA ACUATICA'
 'CANCHA DE FUTBOLL' 'carretera' 'OFICINA MIGARCION LA RAYA'
 'CLINICA COLSANITAS' 'CENTRO DE SALUD DEL CABO DE LA'
 'CLINISANITAS PUERTO BOLIVAR' 'clinica general de soledad'
 'FLOTA ACUATICA' 'EN LA CALLE' 'DOMICILIO' 'RANCHERÌA KAMANA'
 'RANCHERIA CHAMANAL' 'VEHICULO (TAXI)' 'CENTRO DE SALUD TAGANGA'
 'finca sabanita' 'VIA QUE CONDUCE A SAN BLAS CON'
 'BUS DE SERVICIO PUBLICO' 'VIA PUBLICA-AMBULANCIA' 'EN VIA DE TROCHA'
 'CASA' 'FINCA' 'finca' 'PARTERA' 'VIA VILLA ARIZA' 'CARRO'
 'DENTRO DE UN VEHICULO TAXI' 'CANOA' 'CENTRO DE SALUD CABO DE LA VEL'
 'MUNICIPIO DE ACHI' 'PAPAYAL' 'MUELLE DE LAS ISLAS DEL ROSARI' 'FAMILIAR'
 'RANCHERIA KM 31' 'vehiculo' 'en  un bus' 'CENTRO MEDICO PUERTO BOLIVAR'
 'NO ESPECIFICADO' 'Transporte Acuatico' 'AMBULACION -MARIA LA BAJA'
 'MOTO (CALLE)' 'CHALUPA' 'TRANSPORTE PUBLICO' 'CARRETERA DE SU DOMICILIO'
 'BUS DE TRASPORTE PUBLICO' 'ambulancia' 'CARRO - VIA PUBLICA' '0'
 'LA CHAGRA' 'AMBULANCIA MEDICALIZADA' 'SAN MIGUEL' 'Ambulancia'
 'en carretera via agililla -pue' 'DURANTE TRASLADO VIA PAUNA - C'
 'VEHÍCULO DE RECICLAJE' 'BUS' 'VEHICULO EN VIA PUBLICA' 'CASA FAMILIAR'
 'VEHICULO' 'Rio Guaviare' 'SIERRA NEVADA' 'CENTRO MEDICO EL OASIS'
 'CENTRO DE SALUD' 'CENTRO DE SALUD DE ROBLES' 'el roble'
 'CAMINO EN UNA MOTO' 'LA GUARIPA' 'vereda argentina norte'
 'AMBULANCIA HEAD' 'TRASLADO EN AMBULANCIA' 'AMBULANCIA DE BOMBEROS'
 'AMBULANCIA DE LA E.S.E HOSPITA' 'AMBULANCIA INSTITUCIONAL' 'VIVIENDA'
 'VEHICULO AUTOMOTRIZ' 'SABANA DE LA FUGA' 'AMBULANCIA - VIA PUBLICA'
 'RESGUARDO INDIGENA MAGUARE' 'AMBULANCIA ALTILLANURA' 'LUGAR DONDE VIVE'
 'ACHAKARA' 'COMUNIDAD CHOROLOBO' 'ALBERGUE' 'VÍA PÚBLICA'
 'AMBULANCIA VIA VILLAVICENCIO' 'HOTEL LA CRISTALINA' 'AERONAVE'
 'COMUNIDAD' 'EN COMUNIDAD' 'YERUA' 'AMBULANCIA INSITITUCIONAL'
 'CASA DE LA PACIENTE' 'FINCA EUCALIPTO ESMERALDA' 'CAMPO' 'EN EL PUERTO'
 'COMUNIDAD SAN ANTONIO' 'IPS CENTRO DE SALUD TRINIDAD'
 'VIA NACIONAL PAICOL-LA PLATA' 'CI KANALITOJO' 'COMUNIDAD KANALITOJO'
 'COMUNIDAD ESPERANZA' 'FINCA CAÑO VEREÑO' 'FINCA GUACAMAYAS'
 'FINCA LA FAENA' 'VEHICULO DE PADRE EN DESPLAZAM' 'CASA VECINA'
 'VIA PIÑALITO' 'ALBERGUE INDIGENA' 'AMBULANCIA DE TRANSPORTE MEDIC'
 'AMBULANCIA DE RIO CHIQUITO' 'COMUNIDAD INDIGENA LA MALLERA' 'JURIEPE'
 'VEREDA AGUAS BLANCAS' 'EN UNA TIENDA' 'EL DOMICILIO' 'KILOMETRO 16'
 'PUERTO SOLITA' 'PUESTO DE SALUD DE PUERTO ALVI' 'PUERTO ALVIRA'
 'KILOMETRO 20' 'BARRIO ANTIOQUIA  ATENDIDO POR' 'VEHICULO TIPO TAXI'
 'INSTITUCION DE SALUD (IPS DEL' 'PARTO EXTRAINSTITUCIONAL ( VER'
 'INSTITUCION DE SALUD DEL MUNIC' 'FINCA CAÑO MUCO' 'COMUNIDAD LA HORMIGA'
 'FINCA COROCORAS' 'AMBULANCIA PROCEDENTE DE VENEC' 'CARRO  DE TRANSPORTE'
 'AMBULANCIA ESE MARIA AUXILIADO' 'vereda san  pedro'
 'RIO META EN EL YATE' 'VIA DESTAPADA' 'nueva antioquia'
 'via publica carro' 'COMUNIDAD RINCON GUAMAL' 'FINCA LA BENDICION'
 'AUTOPISTABOGOTA TUNJA SECTOR E' 'AMBULANCIA 5103 HOSPITAL SAN A' 'calle'
 'VEHICULO DE TRANSPORTE PUBLICO' 'UMHES SANTA CLARA' 'AMBULACIA' 'BOSQUE'
 'PRIMAVERA II' 'CENTRO DE SALUD DE CACAGUAL' 'COMUNIDAD DE DANTA'
 'LANCHA - RIO ATABAPO POR COMUN' 'campo abierto' 'PUERTO MINERO'
 'CAMPO ABIERTO' 'Ambulancia institucional Carta' 'ALBERGUE MALLAMAS'
 'AUTOMOVIL PARTICULAR' 'HOSPIUTAL DE PAUJIL' 'RIO ORTEGUAZA' 'OTRO'
 'DURANTE EL TRASLADO AL HOSPITA' 'MOTOCARRO LLEGANDO AL HOSPITAL'
 'CARRO PUBLICO' 'VEHÍCULO' 'EN LA BALSA' 'BOTE AMBULANCIA' 'BOTE'
 'Kilometro 36' 'KILOMETRO 25 VIA VALPARAISO-SO' 'TROCHA'
 'PARTO ATENDIDO EN CANOA' 'CALLE ENFRENTE AL HOSPITAL'
 'AMBULANCIA BOMBEROS' 'VIA PUBLICA ( AMBULANCIA)' 'COMUNIDAD INDIGENA'
 'VEREDA LA CASCADA' 'VEREDA ESCOBAL CENTRO' 'RESGUARDO UNUMA ALTO'
 'AMBULANICA' 'CARRO PARTICULAR' 'MOTOTAXI' 'DESCONOCIDO'
 'FUERTE MILITAR LARANDIA' 'PUESTO DE SALUD MIRAFLORES'
 'VIA PUBLICA RURAL' 'AMBULANCIA DE MOSCOTE EN TRASL'
 'VIA ENTRE LA VEREDA LAUREL A L' 'EN CARRO' 'VEHICULO SERVICIO PUBLICO'
 'AMBULANCIA DE HOSPITAL DE SESQ' 'CAI' 'VEHICULO DE TRANSPORTE'
 'hotel doña ceci' 'MEDICENTRO FAMILIAR' 'CARRETERA MIENTRAS VENIA EN AM'
 'TERMINAL DE TRANSPORTE' 'ZARAGOZA' 'HOTEL' 'CENTRO MEDICO LABORAL QUIFA'
 'VIA PUBLICA EN TAXI' 'AMBULANCIA INSTITUSIONAL' 'VIA RURAL'
 'AUTOMOVIL EN VIA CHAPARRERA' 'VEREDA PEÑA ROJAS' 'CASA PARTERA'
 'VIA ALGECIRAS - CAMPOALEGRE KM' 'VDA LINDENAL' 'EN VONGO'
 'PARQUE NACIONAL' 'TAXI FRENTE AL HOSPITAL' 'AMBULANCIA DE HRVT'
 'RESTAURANTE' 'EXTRAINSTITUCIONAL' 'KANALITOJO' 'Guacamayas'
 'CASA DE UNA HERMANA' 'PATIO' 'ISLA BACHACO'
 'RESGUARDO INDIGENA AGUA NEGRA ' 'BONGO' 'CASERIO ZONA MINERA'
 'CAMPO ABIERTO SELVA' 'MESETAS DAGUA' 'Comunidad algarrobos'
 'CERRO DEL BITA' 'EN LA SELVA' 'CONSULTORIO MEDICO PARTICULAR'
 'FUERA DE CASA' '"EN CAMIONETA"' 'VEREDA SANJONES'
 'VIA PUBLICA - PUERTO ARANGO' 'AUTOMOVIL TAXI' 'RIVERA DEL RIO ARAUCA'
 'RESGUARDO MOCUARE' 'NO APLICA' 'DISPENSARIO' 'Vía Pública' 'puente via'
 'Inspeccion la venturosa ' 'Inspeccion Puerto Murillo ' 'isla del vita '
 'MARACAS' 'GUERETO' 'WASIMAL' 'FINCA ESPERANZA' 'MEREY' 'CASA DE PARTERA'
 'RESGUARDO INDIGENA JERICO CONSAYA' 'MONTE' 'DURANTE TRANSPORTE FLUVIAL'
 'taxi' 'GUANAPALO' 'Rural' 'LANCHA' 'ALCALDIA'
 'CARRTERA VILLA CARO-CUCUTA' 'CHAGRA' 'COMUNIDAD MORICHALITO'
 'COMUNIDAD RONCADOR' 'VEREDA LA LIBERTAD' 'centro hospital san felipe'
 'Centro Hospital San Felipe' 'COMUNIDAD UWA' 'CONSULTORIO MEDICO' 'RIO'
 'PUESTO DE SALUD CAMPO 2' 'AMBULANCIO' 'via publica en ambulancia'
 'BRIGADA DE SALUD' 'comunidad indigena' 'CARRETERA VIA CONVENCION - OCA'
 'VIA CRAVO-ARAUCA' 'VIA PUBLICA  A BORDO DE UN VEH' 'CI MORICHALITO'
 'PUERTA DE HOSPITAL' 'COMUNIDAD CHIVARAQUIA' 'AMBULANCIA HRN TIBU'
 'CASERIO LLANO GRANDE' 'TRASLADO AMBULANCIA' 'La primavera '
 'ETCR CHARRAS' 'MADRE' 'AMBULANCIA DE LA ESE'
 'INSPECCION DE POLICIA DE PIEDR' 'maloca' 'VEREDA MIRALINDO'
 'VEHÍCULO PARTICULAR' 'CAÑO HORMIGA ' 'CENTRO DE SALUD DE MANDI'
 'vehiculo particular' 'FARMACIA' 'PUENTE' 'DROGUERIA EN CAMPO DOS'
 'EN LA AMBULANCIA EN  LA Y PEDR' 'AMBULANCIA OTRA IPS'
 'CARRETERA-VEREDA SAN PABLO' 'TIERRA LINDA' 'VIA ORU' 'SITIO PÚBLICO'
 'PARTO EN AMBULANCIA' 'ambulancia camino a tibu' 'VERSALLES'
 'AMBULANCIA CAMINO A TIBU' 'CARRETERA VIA LA ARAGUA - SANT' 'MESITAS'
 'HOTEL TRANSITORIO' 'CAMIONETA DE TRASLADO AL HOSPI'
 'DISPENSARIO MEDICO DE BUCARAMA' 'TRANSPORTE DE AMBULANCIA' 'MBULANCIA'
 'AMBULANCIA YA EN BARRANCABERME' 'CARRO QUE LA TRANSPORTABA AL H'
 'AMBULANCIA EN EL TRASLADO A IN' 'GUAQUIRA'
 'VIA PUBLICA KM 50 B/TURA - BUG' 'ambulancia - carretera'
 'CARRETERA MUNICIPAL' 'Comunidad Julieros ' 'CAMPO 2' 'VEREDA ISLANDIA'
 'PUENTE TIERRA' 'EN UN TAXI' 'SAN ANTONIO VEREDA' 'KM 14' 'CAMPO 23'
 'VEHICULO DE SERVIVIO PÚBLICO' 'AMBULANCIA DE GENOVA QUINDIO'
 'DONDE UNA TIA DE LA MADRE' 'EL HOYO' 'Carretera' 'UNA CANOA' 'PARQUE'
 'MOTO CARRO' 'EN VEHICULO' 'MERCEDES RIO CHAGUI' 'VIA EL CAIRO A CAJIBIO'
 'VIA PUBLICA PIENDAMO - POPAYAN' 'AVIONETA' 'AREA DE CULTIVO'
 'RIO MIRA CHINGUIRITO  EN LANCH' 'AMBULANCIA FLUVIAL'
 'CASA DE LA ARMONIA Y LA SALUD' 'carretera que conduce de vered'
 'TRANSPORTE BASICO AMBULATORIO' 'AMBULANCIA EN LA VEREDA AGUA T'
 'EN VEHICULO PUBLICO' 'VEHICULO PUBLICO' 'AMBULANCIA DURANTE EL TRASLADO'
 'PUESTO DE SALUD LA TAGUA' 'CASA DE LA SALUD Y LA ARMONIA ' 'canoa'
 'taxi en el cual se  transporta' 'CAI DE POLICIA SALADITO'
 'via ejido- policarpa' 'VIA AL HOSPITAL' 'VIA PUBLICA PANAMERICANA'
 'en ambulancia durante el trasl' 'en altamat'
 'VEHICULO  PATRULLA POLICIA' 'via publica el mango'
 'RIO PUTUMAYO AMBULANCIA FLUVIA' 'sin informacion' 'TRASNPORTE PUBLICO'
 'VIA  PUBLICA' 'VIA PUBICA' 'caballo' 'AMBULANCIA VIA MANIZALES'
 'EN UN CHOCHO VIA PUBLICA' 'CAMINO DE LA VEREDA'
 'CABECERAS BAJO SAN JUAN' 'EN REMISION' 'CENTRO COMERCIAL'
 'sin informacion ' 'CAMINO AL HOSPITAL RIO MISTRAT'
 'EN  LA  VIA AREA RURAL' 'AMBULANCIA MEDICALIZADA DE TRA'
 'VEHICULO DE DESPLAZAMIENTO' 'SIN INFORMACION '
 'ASOCIACION DE PARTERAS ASOPARU' 'RIO CAJAMBRA  EL BARCO'
 'Ambulancia bomberos' 'ESE HOSPITAL CRISTO REY'
 'AMBULANCIA VIA BELALCAZAR - LA' 'CENTRO DE SALUD DE HERRERA'
 'RECUPERACION DE REGISTRADURIA ' 'VÍA ´PÚBLICA RURAL'
 'PUESTO DE SALUD ARKAKAY' 'CALLE AL FRENTE DEL HOSPITAL'
 'AMBULANCIA DE TRASLADO' 'CARRERA VIA EL SILENCIO'
 'VIA PUBLICA EN AMBULANCIA' 'VIA BALBOA A POPAYAN'
 'EN PEREIRA ENTRADA SAN JORGE' 'CARRETERA RIO MISTRATO HACIA M'
 'VIA CARRETEABLE' 'EN AMBULANCIA TRASLADO HACIA E'
 'VEREDA CUCHARO SAN ANTONIO' 'VIA PUBLICA  VEHICULO DE SERVI'
 'LA REPRESA' 'DOMICILIO VEREDA CHAPINERO'
 'VEREDA EL MARENGO LIBANO TOLIM' 'VEHICULO PARTICULAR EN AREA RU'
 'VEHÍCULO EN DESPLAZAMIENTO' 'AMBULANCIA VIA BELALCAZAR LA V'
 'CARRETERA DURANTE TRASLADO EN' 'CARRETERA VEREDA EL REAL'
 'AMBULANCIA - SECTOR LA QUIEBRA' 'COMUNIDAD EMBERA'
 'VIA QUE CONDUCE DE VEREDA EL M' 'HOSPITAL ROBERTO QUINTERO VILL'
 'EN VIA PUBLICA' 'UN TAXI' 'EN CARRO TRAYECTO AL HOSPITAL' 'CAMINO RURAL'
 'VEREDA EL OASIS' 'Carro' 'EN LA AMBULANCIA VIA RONCESVAL' 'VIA FLUVIAL'
 'VIA PÚBLICA' 'EN UNA BUSETA' 'CENTRO DE SALUD DE BEBEDO'
 'CENTRO DE SALUD DE SAN MIGUEL' 'PUESTO DE SALUD DE DIPURDU'
 'BARRIO JAIPERA CARRETERA' 'FARMACIA DEL BARRIO'
 'PUESTO DE SALUD EL VALLE' 'puesto de salud' 'EN LANCHA' 'ESPOSO'
 'EN CARRETERA E INGRESO A UNA C' 'CENTRO DE SALUD CLAVER'
 'PARTO EN AMBULANCIA (VIA MEDEL' 'VEREDA PUERTO PINGO' 'AUTOBUS'
 'SANTA GERTRUDIS' 'EN CANOA   EN CAMINO DESDE LA ' 'CARRETERA A LA COSTA'
 'BRASA IZQUIERDA' 'AMBULANCIA DE YOLOMBO'
 'CENTRO DE SALUD DE PUEBLO BELL' 'TAXI INGRESO A URGENCIAS'
 'CARRO EN ENTRADA HOSPITAL' 'Casa' 'VIA SAN FRANCISCO -RIO NEGRO' 'BAÑO'
 'VIA SAN JOSE DEL PALMAR' 'EN TRASLADO DE AMBULANCIA' 'PARTO EN TAXI'
 'casa' 'puesto de salud el valle' 'VEREDA  EL HOYO'
 'puesto de salud el vale' 'pueso de slud el valle'
 'EN UNA LANCHA CUANDO SE DESPLA' 'CAMIONETA PARTICULAR'
 'PUSTO DE SALUD EL VALLE' 'DURANTE REMISION' 'CAMIONETA'
 'EN UN BOTE ACUATICO NAVEGANDO ' 'JAIBIA COREDOCITO'
 'CENTRO DE SALUD CORREGIMIENTO ' 'EN EL BOTE' 'PUESTO DE SALUD VEGAEZ'
 'EN TAXI' 'EN UN ANDEN' 'CASA DE LA TIA' 'CASA MADRE'
 'PARTO EN AMBULANCIA (VEREDA LO' 'EL TAXI' 'VIA UNGUIA - TURBO'
 'MOTOCARRO DURANTE EL TRASLADO' 'CHAGERADO'
 'HOSPITAL SANTA MARIA DE SANTA' 'GUAGUA' 'AMBULANCIA VÍA AMALFI YOLOMBÓ'
 'CANAL' 'ISLA' 'TURRIQUITADO ALTO' 'CHIBUGADO'
 'CENTRO DE SALUD DE LA VEREDA' 'AMBULANCIA//LA CORTADA VÍA AMA'
 'CARRETERA EN AMBULANCIA' 'VEGACHI AMBULANCIA INSTITUCION'
 'PUESTO DE SALUD DE FRASQUILLO' 'EN LA VIA' 'carro particular'
 'COMUNIDAD DE ISLA' 'CASA.' 'EN LA PANGA' 'AMBULANCIA EXTRAINSTITUCIONAL'
 'carretera que conduce de la ve' 'CAMINO A CASA- CHOCO  EN LANCH'
 'NACE EN TAXI A LAS 07:05' 'NARANGUE' 'COMUNIDAD ISLA'
 'EN EL PUERTO EN LA AMBULANCIA' 'TRANSPORTE' 'TURRIQUITADO LLANO'
 'EL RÍO' 'SIN ESTABLECER' 'CHORI' 'EN LA LANCHA' 'CARRETERA (MOTOCARRO)'
 'quebrada' 'SINESTABLECER' 'SIN ESTABLCER'
 'DISPENSARIO MEDICO DE MEDELLÍN' 'VIA FLUVIAL SECTOR LOS PLATILL'
 'VEREDA EL LLANO' 'cabecera de quebrada']
Valores no válidos: [nan]

FECHA_NACM - Valores no válidos detectados: 272245
Valores válidos detectados: ['03/04/2013' '17/01/2009' '16/08/2017' ... '25/04/2021' '23/10/1999'
 '31/07/2001']
Valores no válidos: [nan]

In [42]:
incosistences21 = check_consistency(nac2021_data)
Todos los tipos de datos son consistentes con los esperados.
C:\Users\PC2\AppData\Local\Temp\ipykernel_7124\604307692.py:92: DeprecationWarning: is_categorical_dtype is deprecated and will be removed in a future version. Use isinstance(dtype, pd.CategoricalDtype) instead
  elif pd.api.types.is_categorical_dtype(dataset[col]):

Nacimientos año 2022¶

In [43]:
nac2022_data.shape
Out[43]:
(573625, 39)
In [44]:
nac2022_data.head()
Out[44]:
COD_DPTO COD_MUNIC AREANAC SIT_PARTO OTRO_SIT SEXO PESO_NAC TALLA_NAC ANO MES ... N_HIJOSV FECHA_NACM N_EMB SEG_SOCIAL IDCLASADMI EDAD_PADRE NIV_EDUP ULTCURPAD PROFESION TIPOFORMULARIO
0 8 638 1 1 NaN 1 4 4 2022 12 ... 2 12/10/2015 2 2 2.0 29 3 8 1.0 1
1 11 1 1 1 NaN 1 6 5 2022 12 ... 2 12/09/2012 2 1 1.0 24 4 11 1.0 1
2 27 1 1 1 NaN 2 6 5 2022 12 ... 4 14/03/2019 4 2 2.0 25 3 9 1.0 1
3 8 1 1 1 NaN 1 7 5 2022 12 ... 2 21/09/2017 4 1 1.0 29 8 2 1.0 1
4 76 1 1 1 NaN 2 4 4 2022 12 ... 1 NaN 1 2 2.0 21 2 5 1.0 1

5 rows × 39 columns

In [45]:
nac2022_data.info()
<class 'pandas.core.frame.DataFrame'>
RangeIndex: 573625 entries, 0 to 573624
Data columns (total 39 columns):
 #   Column          Non-Null Count   Dtype  
---  ------          --------------   -----  
 0   COD_DPTO        573625 non-null  int64  
 1   COD_MUNIC       573625 non-null  int64  
 2   AREANAC         573625 non-null  int64  
 3   SIT_PARTO       573625 non-null  int64  
 4   OTRO_SIT        1153 non-null    object 
 5   SEXO            573625 non-null  int64  
 6   PESO_NAC        573625 non-null  int64  
 7   TALLA_NAC       573625 non-null  int64  
 8   ANO             573625 non-null  int64  
 9   MES             573625 non-null  int64  
 10  ATEN_PAR        573625 non-null  int64  
 11  T_GES           573625 non-null  int64  
 12  T_GES_AGRU_CIE  573625 non-null  int64  
 13  NUMCONSUL       573625 non-null  int64  
 14  TIPO_PARTO      573625 non-null  int64  
 15  MUL_PARTO       573625 non-null  int64  
 16  APGAR1          573625 non-null  int64  
 17  APGAR2          573625 non-null  int64  
 18  IDHEMOCLAS      573625 non-null  int64  
 19  IDFACTORRH      573625 non-null  int64  
 20  IDPERTET        573625 non-null  int64  
 21  EDAD_MADRE      573625 non-null  int64  
 22  EST_CIVM        573625 non-null  int64  
 23  NIV_EDUM        573625 non-null  int64  
 24  ULTCURMAD       573625 non-null  int64  
 25  CODPRES         571540 non-null  float64
 26  CODPTORE        567227 non-null  float64
 27  CODMUNRE        567227 non-null  float64
 28  AREA_RES        567227 non-null  float64
 29  N_HIJOSV        573625 non-null  int64  
 30  FECHA_NACM      314220 non-null  object 
 31  N_EMB           573625 non-null  int64  
 32  SEG_SOCIAL      573625 non-null  int64  
 33  IDCLASADMI      532880 non-null  float64
 34  EDAD_PADRE      573625 non-null  int64  
 35  NIV_EDUP        573625 non-null  int64  
 36  ULTCURPAD       573625 non-null  int64  
 37  PROFESION       571426 non-null  float64
 38  TIPOFORMULARIO  573625 non-null  int64  
dtypes: float64(6), int64(31), object(2)
memory usage: 170.7+ MB
In [46]:
nac2022_data.describe()
Out[46]:
COD_DPTO COD_MUNIC AREANAC SIT_PARTO SEXO PESO_NAC TALLA_NAC ANO MES ATEN_PAR ... AREA_RES N_HIJOSV N_EMB SEG_SOCIAL IDCLASADMI EDAD_PADRE NIV_EDUP ULTCURPAD PROFESION TIPOFORMULARIO
count 573625.000000 573625.000000 573625.000000 573625.000000 573625.000000 573625.000000 573625.000000 573625.0 573625.000000 573625.000000 ... 567227.000000 573625.000000 573625.000000 573625.000000 532880.000000 573625.000000 573625.000000 573625.000000 571426.000000 573625.000000
mean 34.287707 161.673253 1.059858 1.048894 1.489131 5.674010 4.580214 2022.0 6.529705 1.101352 ... 1.426665 2.306800 2.490333 1.894248 1.686243 36.490922 13.588456 16.155612 1.026394 1.007465
std 26.608224 260.008908 0.533592 0.503851 0.500039 1.100214 0.687949 0.0 3.444938 0.729567 ... 0.773958 6.127059 6.148717 1.091143 0.790525 78.459605 27.612422 26.914807 0.300867 0.121127
min 5.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 2022.0 1.000000 1.000000 ... 1.000000 1.000000 1.000000 1.000000 1.000000 12.000000 1.000000 0.000000 1.000000 1.000000
25% 11.000000 1.000000 1.000000 1.000000 1.000000 5.000000 4.000000 2022.0 4.000000 1.000000 ... 1.000000 1.000000 1.000000 1.000000 1.000000 24.000000 3.000000 5.000000 1.000000 1.000000
50% 23.000000 1.000000 1.000000 1.000000 1.000000 6.000000 5.000000 2022.0 7.000000 1.000000 ... 1.000000 2.000000 2.000000 2.000000 2.000000 29.000000 4.000000 9.000000 1.000000 1.000000
75% 54.000000 269.000000 1.000000 1.000000 2.000000 6.000000 5.000000 2022.0 10.000000 1.000000 ... 1.000000 2.000000 3.000000 2.000000 2.000000 35.000000 8.000000 11.000000 1.000000 1.000000
max 99.000000 980.000000 9.000000 9.000000 3.000000 9.000000 9.000000 2022.0 12.000000 9.000000 ... 3.000000 99.000000 99.000000 9.000000 9.000000 999.000000 99.000000 99.000000 5.000000 3.000000

8 rows × 37 columns

In [47]:
plot_numeric_distributions(nac2022_data)
No description has been provided for this image
In [48]:
plot_top_categories(nac2022_data, 'OTRO_SIT')
plot_top_categories(nac2022_data, 'FECHA_NACM')
No description has been provided for this image
No description has been provided for this image
In [49]:
plot_boxplots_and_detect_outliers(nac2022_data)
COD_DPTO - Datos atípicos detectados: 0
COD_MUNIC - Datos atípicos detectados: 45950
Valores atípicos: [744 899 861 ... 980 807 758]

AREANAC - Datos atípicos detectados: 12558
Valores atípicos: [2 3 3 ... 2 3 3]

SIT_PARTO - Datos atípicos detectados: 12316
Valores atípicos: [2 2 2 ... 2 2 2]

SEXO - Datos atípicos detectados: 0
PESO_NAC - Datos atípicos detectados: 35369
Valores atípicos: [3 2 9 ... 3 9 3]

TALLA_NAC - Datos atípicos detectados: 6219
Valores atípicos: [9 9 9 ... 2 9 9]

ANO - Datos atípicos detectados: 0
MES - Datos atípicos detectados: 0
ATEN_PAR - Datos atípicos detectados: 12373
Valores atípicos: [5 6 5 ... 6 5 5]

T_GES - Datos atípicos detectados: 5195
Valores atípicos: [6 6 6 ... 6 6 6]

T_GES_AGRU_CIE - Datos atípicos detectados: 68637
Valores atípicos: [3 3 3 ... 3 3 3]

NUMCONSUL - Datos atípicos detectados: 32061
Valores atípicos: [13  0  0 ... 15 13 99]

TIPO_PARTO - Datos atípicos detectados: 2222
Valores atípicos: [9 9 9 ... 4 4 4]

MUL_PARTO - Datos atípicos detectados: 12639
Valores atípicos: [2 2 2 ... 2 2 2]

APGAR1 - Datos atípicos detectados: 27761
Valores atípicos: [99 99  5 ...  6 99  5]

APGAR2 - Datos atípicos detectados: 23447
Valores atípicos: [99 99  5 ... 99 99 99]

IDHEMOCLAS - Datos atípicos detectados: 7506
Valores atípicos: [9 9 9 ... 9 9 9]

IDFACTORRH - Datos atípicos detectados: 33673
Valores atípicos: [2 2 2 ... 2 9 2]

IDPERTET - Datos atípicos detectados: 53112
Valores atípicos: [5 5 1 ... 5 3 1]

EDAD_MADRE - Datos atípicos detectados: 268
Valores atípicos: [99 99 99 99 99 99 99  9 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99
 99 99 99 99  9 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99
 99 99 99 99 99 99 99 99 99 99 99  9 99  9  9 99 99 99 99 99 99 99 99 99
 99 99 99 99  9 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99  9 99 99
 99 99  9 99 99  9 99 99 99 99  9 99 99 99 99 99 99 99 99 99 99 99 99 99
 99 99 99 99  9  9  9 99 99 99 99 99 99 99 99 99 99  9 99 99 99 99 99 99
 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99
 99 99 99 99 99 99  9  9  9  9  9  9  9  9  9  9  9  9  9  9  9  9  9  9
  9  9  9  9  9  9  9  9  9  9  9  9  9  9  9  9  9  9  9  9  9  9  9  9
  9  9  9  9  9  9  9  9  9  9  9  9  9  9  9  9  9  9  9  9  9  9  9 99
  9  9  9  9  9  9  9  9  9  9  9  9  9  9  9  9  9  9  9  9  9  9  9  9
  9  9  9  9]

EST_CIVM - Datos atípicos detectados: 0
NIV_EDUM - Datos atípicos detectados: 18224
Valores atípicos: [99 99 99 ... 99 99 99]

ULTCURMAD - Datos atípicos detectados: 18233
Valores atípicos: [99 99 99 ... 99 99 99]

CODPRES - Datos atípicos detectados: 4313
Valores atípicos: [862. 862. 862. ... 862. 862. 862.]

CODPTORE - Datos atípicos detectados: 0
CODMUNRE - Datos atípicos detectados: 0
AREA_RES - Datos atípicos detectados: 141507
Valores atípicos: [3. 2. 3. ... 2. 2. 2.]

N_HIJOSV - Datos atípicos detectados: 49648
Valores atípicos: [4 6 4 ... 4 5 4]

N_EMB - Datos atípicos detectados: 9432
Valores atípicos: [99 99 99 ...  8  7  8]

SEG_SOCIAL - Datos atípicos detectados: 43089
Valores atípicos: [5 5 5 ... 5 5 5]

IDCLASADMI - Datos atípicos detectados: 10195
Valores atípicos: [5. 4. 5. ... 5. 5. 5.]

EDAD_PADRE - Datos atípicos detectados: 11290
Valores atípicos: [54 60 60 ... 57 56 54]

NIV_EDUP - Datos atípicos detectados: 53895
Valores atípicos: [99 99 99 ... 99 99 99]

ULTCURPAD - Datos atípicos detectados: 54025
Valores atípicos: [99 99 99 ... 99 99 99]

PROFESION - Datos atípicos detectados: 4949
Valores atípicos: [5. 3. 3. ... 5. 3. 5.]

TIPOFORMULARIO - Datos atípicos detectados: 2199
Valores atípicos: [3 3 3 ... 3 3 3]

No description has been provided for this image
Out[49]:
{'COD_DPTO': array([], dtype=int64),
 'COD_MUNIC': array([744, 899, 861, ..., 980, 807, 758], dtype=int64),
 'AREANAC': array([2, 3, 3, ..., 2, 3, 3], dtype=int64),
 'SIT_PARTO': array([2, 2, 2, ..., 2, 2, 2], dtype=int64),
 'SEXO': array([], dtype=int64),
 'PESO_NAC': array([3, 2, 9, ..., 3, 9, 3], dtype=int64),
 'TALLA_NAC': array([9, 9, 9, ..., 2, 9, 9], dtype=int64),
 'ANO': array([], dtype=int64),
 'MES': array([], dtype=int64),
 'ATEN_PAR': array([5, 6, 5, ..., 6, 5, 5], dtype=int64),
 'T_GES': array([6, 6, 6, ..., 6, 6, 6], dtype=int64),
 'T_GES_AGRU_CIE': array([3, 3, 3, ..., 3, 3, 3], dtype=int64),
 'NUMCONSUL': array([13,  0,  0, ..., 15, 13, 99], dtype=int64),
 'TIPO_PARTO': array([9, 9, 9, ..., 4, 4, 4], dtype=int64),
 'MUL_PARTO': array([2, 2, 2, ..., 2, 2, 2], dtype=int64),
 'APGAR1': array([99, 99,  5, ...,  6, 99,  5], dtype=int64),
 'APGAR2': array([99, 99,  5, ..., 99, 99, 99], dtype=int64),
 'IDHEMOCLAS': array([9, 9, 9, ..., 9, 9, 9], dtype=int64),
 'IDFACTORRH': array([2, 2, 2, ..., 2, 9, 2], dtype=int64),
 'IDPERTET': array([5, 5, 1, ..., 5, 3, 1], dtype=int64),
 'EDAD_MADRE': array([99, 99, 99, 99, 99, 99, 99,  9, 99, 99, 99, 99, 99, 99, 99, 99, 99,
        99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99,  9, 99, 99, 99, 99, 99,
        99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99,
        99, 99, 99, 99, 99, 99, 99, 99,  9, 99,  9,  9, 99, 99, 99, 99, 99,
        99, 99, 99, 99, 99, 99, 99, 99,  9, 99, 99, 99, 99, 99, 99, 99, 99,
        99, 99, 99, 99, 99, 99, 99, 99,  9, 99, 99, 99, 99,  9, 99, 99,  9,
        99, 99, 99, 99,  9, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99,
        99, 99, 99, 99, 99,  9,  9,  9, 99, 99, 99, 99, 99, 99, 99, 99, 99,
        99,  9, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99,
        99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99,
        99, 99, 99, 99,  9,  9,  9,  9,  9,  9,  9,  9,  9,  9,  9,  9,  9,
         9,  9,  9,  9,  9,  9,  9,  9,  9,  9,  9,  9,  9,  9,  9,  9,  9,
         9,  9,  9,  9,  9,  9,  9,  9,  9,  9,  9,  9,  9,  9,  9,  9,  9,
         9,  9,  9,  9,  9,  9,  9,  9,  9,  9,  9,  9,  9,  9,  9,  9,  9,
         9, 99,  9,  9,  9,  9,  9,  9,  9,  9,  9,  9,  9,  9,  9,  9,  9,
         9,  9,  9,  9,  9,  9,  9,  9,  9,  9,  9,  9,  9], dtype=int64),
 'EST_CIVM': array([], dtype=int64),
 'NIV_EDUM': array([99, 99, 99, ..., 99, 99, 99], dtype=int64),
 'ULTCURMAD': array([99, 99, 99, ..., 99, 99, 99], dtype=int64),
 'CODPRES': array([862., 862., 862., ..., 862., 862., 862.]),
 'CODPTORE': array([], dtype=float64),
 'CODMUNRE': array([], dtype=float64),
 'AREA_RES': array([3., 2., 3., ..., 2., 2., 2.]),
 'N_HIJOSV': array([4, 6, 4, ..., 4, 5, 4], dtype=int64),
 'N_EMB': array([99, 99, 99, ...,  8,  7,  8], dtype=int64),
 'SEG_SOCIAL': array([5, 5, 5, ..., 5, 5, 5], dtype=int64),
 'IDCLASADMI': array([5., 4., 5., ..., 5., 5., 5.]),
 'EDAD_PADRE': array([54, 60, 60, ..., 57, 56, 54], dtype=int64),
 'NIV_EDUP': array([99, 99, 99, ..., 99, 99, 99], dtype=int64),
 'ULTCURPAD': array([99, 99, 99, ..., 99, 99, 99], dtype=int64),
 'PROFESION': array([5., 3., 3., ..., 5., 3., 5.]),
 'TIPOFORMULARIO': array([3, 3, 3, ..., 3, 3, 3], dtype=int64)}
In [50]:
plot_correlation_matrix(nac2022_data)
No description has been provided for this image

Análisis de cálidad de los datos.

In [51]:
missing_data22 = check_completeness(nac2022_data)
Completitud: Valores Faltantes
            Valores faltantes  Porcentaje (%)
OTRO_SIT               572472       99.798998
FECHA_NACM             259405       45.222053
IDCLASADMI              40745        7.103073
CODPTORE                 6398        1.115363
CODMUNRE                 6398        1.115363
AREA_RES                 6398        1.115363
PROFESION                2199        0.383351
CODPRES                  2085        0.363478
No description has been provided for this image
In [52]:
duplicate_info22 = check_uniqueness(nac2022_data)
Unicidad: Detección de Duplicados
Número de duplicados: 584
Porcentaje de duplicados: 0.10%

Registros duplicados (primeras 5 filas):
     COD_DPTO  COD_MUNIC  AREANAC  SIT_PARTO OTRO_SIT  SEXO  PESO_NAC  \
380        54          1        1          1      NaN     2         4   
441        20         45        9          9      NaN     2         9   
445        44        560        9          9      NaN     2         9   
457        44        847        9          9      NaN     2         9   
499        20        570        9          9      NaN     1         9   

     TALLA_NAC   ANO  MES  ...  N_HIJOSV  FECHA_NACM  N_EMB  SEG_SOCIAL  \
380          4  2022   12  ...         2         NaN      2           1   
441          9  2022    9  ...        99         NaN     99           9   
445          9  2022    6  ...        99         NaN     99           9   
457          9  2022    6  ...        99         NaN     99           9   
499          9  2022    4  ...        99         NaN     99           9   

     IDCLASADMI  EDAD_PADRE  NIV_EDUP  ULTCURPAD  PROFESION  TIPOFORMULARIO  
380         1.0          32         9          5        1.0               1  
441         9.0          53        99         99        NaN               3  
445         9.0         999        99         99        NaN               3  
457         9.0         999        99         99        NaN               3  
499         9.0          24        99         99        NaN               3  

[5 rows x 39 columns]
In [53]:
validity_issues22 = check_validity_auto(nac2022_data)
COD_MUNIC - Valores fuera de rango detectados: 45950
Rango válido detectado: (-401.0, 671.0)
Valores fuera de rango: [744 899 861 679 847 773 736 755 708 835 698 892 838 834 758 837 887 873
 794 790 807 753 890 757 865 754 770 780 759 756 675 810 789 895 842 800
 960 689 801 820 798 814 884 787 889 687 743 980 678 843 815 875 885 682
 720 821 713 711 855 696 693 817 745 809 676 883 824 869 710 701 893 823
 785 688 686 819 791 874 690 707 878 845 761 777 672 854 750 717 871 792
 683 877 692 870 799 772 680 718 673 771 858 863 760 894 836 697 828 685
 856 808 867 740 872 674 702 797 786 742 849 816 862 886 699 860 839 684
 804 879 763 832]

AREANAC - Valores fuera de rango detectados: 12558
Rango válido detectado: (1.0, 1.0)
Valores fuera de rango: [2 3 9]

SIT_PARTO - Valores fuera de rango detectados: 12316
Rango válido detectado: (1.0, 1.0)
Valores fuera de rango: [2 9 3]

PESO_NAC - Valores fuera de rango detectados: 35369
Rango válido detectado: (3.5, 7.5)
Valores fuera de rango: [3 2 9 8 1]

TALLA_NAC - Valores fuera de rango detectados: 6219
Rango válido detectado: (2.5, 6.5)
Valores fuera de rango: [9 2 1]

ATEN_PAR - Valores fuera de rango detectados: 12373
Rango válido detectado: (1.0, 1.0)
Valores fuera de rango: [5 6 3 9 4 2]

T_GES - Valores fuera de rango detectados: 5195
Rango válido detectado: (1.5, 5.5)
Valores fuera de rango: [6 9 1]

T_GES_AGRU_CIE - Valores fuera de rango detectados: 68637
Rango válido detectado: (4.0, 4.0)
Valores fuera de rango: [3 2 6 5 9 1]

NUMCONSUL - Valores fuera de rango detectados: 32061
Rango válido detectado: (0.5, 12.5)
Valores fuera de rango: [13  0 14 16 99 15 17 20 18 24 21 22 19 23 25]

TIPO_PARTO - Valores fuera de rango detectados: 2222
Rango válido detectado: (-0.5, 3.5)
Valores fuera de rango: [9 4]

MUL_PARTO - Valores fuera de rango detectados: 12639
Rango válido detectado: (1.0, 1.0)
Valores fuera de rango: [2 9 3 4]

APGAR1 - Valores fuera de rango detectados: 27761
Rango válido detectado: (6.5, 10.5)
Valores fuera de rango: [99  5  1  6  4  3  2]

APGAR2 - Valores fuera de rango detectados: 23447
Rango válido detectado: (7.5, 11.5)
Valores fuera de rango: [99  5  1  7  6  4  3  2]

IDHEMOCLAS - Valores fuera de rango detectados: 7506
Rango válido detectado: (0.5, 4.5)
Valores fuera de rango: [9]

IDFACTORRH - Valores fuera de rango detectados: 33673
Rango válido detectado: (1.0, 1.0)
Valores fuera de rango: [2 9]

IDPERTET - Valores fuera de rango detectados: 53112
Rango válido detectado: (6.0, 6.0)
Valores fuera de rango: [5 1 9 3 2 4]

EDAD_MADRE - Valores fuera de rango detectados: 268
Rango válido detectado: (0.0, 8.0)
Valores fuera de rango: [99  9]

NIV_EDUM - Valores fuera de rango detectados: 18224
Rango válido detectado: (-3.0, 13.0)
Valores fuera de rango: [99]

ULTCURMAD - Valores fuera de rango detectados: 18233
Rango válido detectado: (-4.0, 20.0)
Valores fuera de rango: [99]

CODPRES - Valores fuera de rango detectados: 4313
Rango válido detectado: (170.0, 170.0)
Valores fuera de rango: [862. 662.  76. 840. 604. 660. 591. 218. 724. 533. 528.   8. 124. 548.
 174. 484. 716.  68. 340. 180. 250. 630. 404.]

AREA_RES - Valores fuera de rango detectados: 141507
Rango válido detectado: (1.0, 1.0)
Valores fuera de rango: [3. 2.]

N_HIJOSV - Valores fuera de rango detectados: 49648
Rango válido detectado: (-0.5, 3.5)
Valores fuera de rango: [ 4  6  5 99 11  7 12  8  9 13 10 14 15]

N_EMB - Valores fuera de rango detectados: 9432
Rango válido detectado: (-2.0, 6.0)
Valores fuera de rango: [99 11  7 12  8  9 10 13 14 15 16 20]

SEG_SOCIAL - Valores fuera de rango detectados: 43089
Rango válido detectado: (-0.5, 3.5)
Valores fuera de rango: [5 4 9]

IDCLASADMI - Valores fuera de rango detectados: 10195
Rango válido detectado: (-0.5, 3.5)
Valores fuera de rango: [5. 4. 9.]

EDAD_PADRE - Valores fuera de rango detectados: 11290
Rango válido detectado: (7.5, 51.5)
Valores fuera de rango: [ 54  60  53  52 999  66  61  56  59  63  58  55  71  57  67  76  74  68
  62  79  65  78  70  64  73  69  72  75  77]

NIV_EDUP - Valores fuera de rango detectados: 53895
Rango válido detectado: (-4.5, 15.5)
Valores fuera de rango: [99]

ULTCURPAD - Valores fuera de rango detectados: 54025
Rango válido detectado: (-4.0, 20.0)
Valores fuera de rango: [99]

PROFESION - Valores fuera de rango detectados: 4949
Rango válido detectado: (1.0, 1.0)
Valores fuera de rango: [5. 3. 2. 4.]

TIPOFORMULARIO - Valores fuera de rango detectados: 2199
Rango válido detectado: (1.0, 1.0)
Valores fuera de rango: [3 2]

OTRO_SIT - Valores no válidos detectados: 572472
Valores válidos detectados: ['EN CASA' 'AMBULANCIA' 'RESGUARDO EL TIGRE COMUNIDAD  LA FLORESTA '
 'RESGUARDO  EL TIGRE  COMUNIDAD  LA FLORESTA ' 'COMUNIDAD' 'MOTOTAXI'
 'lomita de curundo'
 'EN RIO BAUDO DURANTE TRASLADO LLEGANDO A PIE DE PATO ' 'AMBULANCIA '
 'Vehículo' 'VÍA PUBLICA' 'taxi'
 'centro de salud del corregimiento de Puerto Claver' 'chalupa'
 'domicilio ' 'RIO BONGO' 'CENTRO DE SALUD' 'Ambulancia'
 'RESGUARDO TOMO BEBERY COMUNIDAD BELEN' 'VEREDA EL COMBOY'
 'PUESTO DE SALUD EL VALLE' 'casa ' 'CAMINO VIA AL HOSPITAL'
 'BELLO HORIZONTE RIO RAPOSO'
 'VDA SAN LUQUITAS  FARMACIA DONDE ATIENDE MÉDICO NO REGISTRAD'
 'domicilio com san piñalito resg bajo rio vichada sectro 2' 'CASA '
 'RANCHERIA ANASUTAPARA' 'AMBULANCIA EN VÍA HACIA SANTA CECILIA '
 'ALBERGUE' 'VIA PUBLICA' 'VIA PUBLICA TRES LLANTA'
 'puesto de salud el valle' 'BALSA RIO INIRIDA ' 'PARTERA' 'casa'
 'METRO MEDELLIN' 'TERMINAL DE TRANSPORTE BUCARAMANGA' 'carretera publica'
 'Traslado en ambulancia ' 'docordó' 'EN SU COMUNIDAD'
 'ambulancia de traslado' 'Comunidad Indígena Betoyes' 'camioneta'
 'ambulancia' 'CALLE ' 'TRANSPORTE PUBLICO ' 'HOSPITAL'
 'VIA PUBLICA PUERTO VALDIVIA' 'CARRO' 'DOMICILIO' 'Rio Atrato '
 'CASA DE UN FAMILIAR' 'Palestina ' 'Ambulancia ' 'VEHÍCULO'
 'BARRIO ALCARABAN' 'clínica murillo' 'CARRO PARTICULAR'
 'transporte de servicio publico TAXI' 'EN LA LANCHA ' 'Taxi'
 'EN CARRO PARTICULAR ' 'ESE HOSPITAL REGIONAL NORTE TIBU'
 'puesto de salud de san antonio del pescado' 'CARRO DE SERVICIO PUBLICO '
 'en la silla de un  taxi cerca a portería de urgencias del ho'
 'PUERTA HOSPITAL' 'PACIENTE QUIEN TUVO PARTO EN TAXI' 'EN CASA '
 'VEREDA TERMOPILAS FINCA LA ESPANTOSA ' 'COMUNIDAD BACHIRA ' 'HOGAR'
 'VEHICULO TRANSPORTE' 'VEHICULO' 'CAMPO ABIERTO' 'COMUNIDAD ICHIPANA'
 'ESPACIO PUBLICO' 'HOGAR ' 'PARQUEADERO'
 'COMUNIDAD NUEVA ZELANDA RESGUARDO SAN LUIS DEL TOMO' 'Domicilio'
 'EN UN TRANSPORTE MARITIMO ' 'HOGAR TEMPORAL' 'TAXI ' 'VIA PÚBLICA'
 'carretera' 'RESGUARDO CAÑA BRAVAS' 'Ambulancia de institucion UNIPA'
 'vereda los milagros  ' 'COM PALOMETA RES BAJO RIO VICHADA SECTOR II'
 'En ambulancia vía a Arauca sector vereda las cruces'
 'COMUNIDAD IQUIACARORA' 'AMBULANCIA VEREDA LA PAVA' 'CASA' 'EN LA  VIA '
 'CASA DE PACIENTE ' 'vereda los quemados'
 'En moto en dirección al municipio' 'Carro' 'ambulancia ' 'TAXI'
 'RESGUARDO EMBERA CAÑADA ONDA' 'automovil' 'PUESTO DE SALUD'
 'RIO BAJO BAUDO' 'DENTRO DE VEHICULO ' 'AUTOMOVIL  CARRETERA '
 'RANCHERIA AYAPAMANA' 'VIA PUBLICA RIO CLARO' 'ambulancia medicalizada'
 'AMBULANCIA MOVIL 7026 ' 'ambulancia clínica Aynan'
 'DOMICILIO ZONA RURAL ' 'RESGUARDO SANTA TERESITA COMUNIDAD ESTERO'
 'en casa ' 'En la via al hospital' 'DROGUERIA' 'en la ambulancia'
 'ambulancia institucional ' 'CALLE' 'RANCHERIA JOROROMANA'
 'vereda hacia nazareth' 'vereda romboy'
 'vereda cofradia del municipio de Nunchia casanare'
 'AMBULANCIA EN EL ROMBOY  MUNICIPIO ARAUCA'
 'comunidad cumariana resguardo aiwacuna chepajibo'
 'AMBULANCIA SOBRE VIA PUBLICA'
 'COMUNIDAD SANTA ROSAL RESG BAJO RIO VICHADA SECTOR 2 ' 'zona rural'
 'TRANSPORTE FLUVIAL DESLIZADOR' 'montañas'
 'ESTACION DE SERVICIO DE CALLE NUEVA' 'Ambulancia TAM OSE840'
 'EN NARANJOS' 'EXTRAHOSPITALARIO' 'via publica'
 'LA CALLE BARRIO PORVENIR' 'VIA PUBLICA SALIENDO DEL TIGRE'
 'COMUNIDAD GUAYAME CENTRAL' 'AMBULANCIA EXTRAINSTITUCIONAL' 'En carro'
 'MEDIO DE TRANSPORTE   YONSO ' 'en comunidad' 'RANCHERIA TOURUPA '
 'AUOTMOVIL' 'Comunidad Indígena San Miguel' 'via publica '
 'AMBULANCIA DE TRASLADO ' 'COM BOPONE RES AIWAKUNA TSEPAJIBO'
 'TRANSPORTE AUTOMOVIL' 'carro particular'
 'puesto de salud hocol servicios petroleros ' 'lancha' 'Vereda Camame'
 'vehiculo' 'FUNDACION LAZOS DE AMOR'
 'ESE SUR OCCIDENTE PUNTO DE ATENCION FLORENCIA CAUCA' 'calle '
 'EN EL CARRO DE LOS PADRES' 'EN TRASLADO DE AMBULANCIA'
 'AMBULANCIA MEDICALIZADA' 'AMBULANCIA ACUATICA' 'CASA DE LA MAMA'
 'VEREDA GABRIEL LOPEZ ' ' VIARAUDO' 'Ambulancia de la institución '
 'PANIQUITA ' 'COMUNIDAD PIRON RESGUARDO BAJO RIO VICHADA SECTOR 2'
 'Ambulancia de la institución' 'AMBULANCIA BOMBEROS' 'En ambulancia '
 'BOTE' 'CARRETERA DESTAPADA ' 'PANGA' 'VIA PUBLICA BARRIO EL PUERTO'
 'VEHICULO SERVICIO PUBLICO' 'DURANTE TRASLADO EN AMBULANCIA ' 'COCHE'
 'EN LA EPS' 'VIA EL REPOSO' 'LANCHA DE PASAJEROS' 'CAMPOS ABIERTOS'
 'CENTRO DE SALUD MAPOY ' 'RANCHERIA JAMUCHENCHON'
 'carretera kilómetro 83' 'CASA  VERDA TAGUA' 'RANCHERIA WARUTAMANA'
 'EN COMUNIDAD' 'VEHICULO ' 'VIVIENDA' 'Comunidad Genarero'
 'NO INSTITUCIONAL' 'ZONA URBANA' 'CARRETERA' 'VIA GACHETA   GUASCA'
 'LA AMBULANCIA' 'COMUNIDAD INDIGENA TEGRIA ' 'De camino en la canoa '
 'RANCHERIA KAINATU ' 'AMBULANCIA A NIVEL DEL TABLAZO' 'vía publica '
 'EN AMBULANCIA ' 'BÓCOTA' 'CENTRO DE SALUD TABACAL '
 'CAMPO ABIERTO BACHIRA' 'Puesto de Salud' 'BOCOTA'
 'ASENYAMIENTO ALIWA CUPEPE COMUNIDAD GRECIA' 'AMBULANCIA INSTITUCIONAL'
 'en un taxi  cerca de la ips virrey solis'
 'VEREDA EL MADROÑO  ASENTAMIENTO INDIGENA'
 'KM 30 VIA SONSON LA UNION EN LA AMBULANCIA' 'carretera liborina olaya'
 'AMBULANCIA EN MONTERIA ' 'CANOA RIO ARAUCA' 'VEHICULO PARTICULAR '
 'VEREDA JEBALA' 'URINA' 'Comunidad Indígena de Angosturas'
 'AMBULANCIA DE CHDN' 'COMUNIDAD INDIGENA BOCOTA GUALANDAY '
 'DOMICILIARIO' 'JEEP TOYOTA VIA GRAMALOTE CUCUTA'
 'TRANSPORTE DE SERVICIO PUBLICO TAXI' 'VEREDA LA ESPERANZA'
 'AMBULANCIA DE ESE HOSPITAL LOCAL RETEN '
 'DOMICILIO COMUNIDAD INDIGENA AREA JOOIN JEB '
 'CARRETERA VIA MULATOS NECOCLI ' 'EXTRAINSTITUCIONAL'
 'ambulancia medicalizada ' 'AUTOMOVIL' 'Comunidad Escuela Nueva'
 'VEHICULO PARTICULAR' 'calle' 'PUERTO RICO ' 'PROINSALUD  SA  '
 'en la via  publicas vereda el carmen en morales ' 'EN EL DOMICILIO'
 'campo  abierto' 'HOTEL' 'La estación ' 'albergue' 'Ambulancia (digal)'
 'CASA DE LA PARTERA' 'VEREDA TENDIDOS' 'AMBJULANCIA BOMBEROS' 'NERETE'
 'SANITAS RESTREPO' 'la venturosa' 'BOMBA DE GASOLINA' 'VÍA PÚBLICA'
 'Caño negro' 'EN CARRO WAS' 'BUS EMPRESA BRASILIA PLACA 6357 STR910'
 'camino veredal' 'mototaxi medio de transporte' 'resguardo indigena'
 'ZONA RURAL DISPERSA' 'COMUNIDAD INDIGENA UWA' 'SAN JUANCITO'
 'MEDIO DE TRANSPORTE DE TRASLADO MEDICO BASICO' 'AMBULANCIA  ' 'LANCHA'
 'PUESTA DE SALUD CHIMILA' 'VEREDA HATO VIEJO' 'LA YE O "Y"'
 'VÍA FLUVIAL DE RÍO TAPAJE' 'BUS PÚBLICO'
 'VEHICULO DE TRANSPORTE PUBLICO' 'POTRERO VIA RECREO ALTO' 'el domicilio'
 'PLAZA PRINCIPAL' 'FINCA ISLA' 'BONGO' 'comunidad' 'LOS MACARIEROS'
 'FINCA EL TROPIEZO' 'VIA GUACACIAS - SABANA - VEHIC' 'AMBULANCIA AEREA'
 'CENTRO DE SALUD VEREDA  CRISTA' 'VEHICULO PUBLICO' 'CASA VECINO'
 'TRANSPORTE PUBLICO' 'EN MUELLE' 'AMBULANCIA CARRETERA VIA MIRAN'
 'PARQUE NACIONAL' 'via veredal chalarca' 'TRANSPORTE FLUVIAL'
 'AMBULANCIA POR MEDICO' 'CALLE-PLAZUELA' 'PARQUE MUNICIPAL'
 'CAMIONETA DE TRASLADO' 'NO HAY INFORMACION' 'AMBULANCIA INSTITUSIONAL'
 'puesto de salud san pedro' 'AMBULANCIA DE  MIRANDA' 'JARAPETTO'
 'TAXI EN VIA PUBLICA' 'VIA CHITA-UVITA' 'RANCHERIA' 'CHONGO'
 'ANDEN CERCA A LA CASA' 'BOMBA LAS CARPAS' 'EKONAY' 'CARRETERA.'
 'CENTRO DE SALUD DE PAPAYAL' 'vehiculo particular' 'EN LA VIA PUBLICA'
 'CHALUPA' 'EN VEHICULO TIPO CARRO' 'VEHICULOS'
 'AMBULANCIA INSTITIUCIONAL' 'VIA CEDRAL SANPEDRO' 'EN LA VIA'
 'VEHICULO   EN PARQUEADERO DEL ' 'FINCA MARY MAR' 'CANOA' 'RIO'
 'DISPENSARIO DE EMPRESA PETROLE' 'CASA PARTO TRADICIONAL'
 'EN LA AMBULANCIA' 'ESTACION DE METRO' 'VEHICULO DE TRANSPORTE'
 'VIA TERRESTRE QUE COMUNICA LA ' 'VIA SAN PEDRO INZA' '170114748'
 'CARRO - EXTRAINSTITUCIONAL' 'CENTRO DE SALUD DE PUERTO BOLI'
 'HOSPITAL NIVEL 1 LA VEGA' 'domocilio de auxiliar de enfer' 'BUS'
 'EMBARCACION' 'SABANA' 'domicilio' 'BUS INTERMUNICIPAL'
 'ASOCIACION DE PARTERAS ASOPARU' 'EN UNA CARRETILLA EN CALLE'
 'EN LA CALLE EL CENTRO' 'PUESTO DE SALUD FILOGRINGO TIB'
 'EN LA CALLE CERCA A SU CASA' 'extrainstitucional'
 'HOSPITAL DE PARAGUIPOA VENEZUE' 'TRANSPORTE DE CAMINO AL HOSPIT'
 'EMBARCACION MARITIMA DE TRALAD' 'AVIONETA' 'TAXI    VIA PUBLICA'
 'AMBULANCIA EN TRASLADO' 'PUERTO PINEDA' 'HOSPITAL BINACIONAL'
 'AMBULANCIA DE TRASLADO' 'CARRETERA HOJAL LA TURBIA' 'COMUNIDAD COBARIA'
 'RESGUARDO UNUMA' 'INSTITUCION EDUCATIVA SENA' 'VEHÍCULO AUTOMOVIL'
 'Casa' 'TRASLADO EN AMBULANCIA' 'EN SU CASA'
 'CLINICA ERMITA DEL PIE DE LA P' 'AMBULANCIA-CARRETERA' 'COMUNIDAD UWA'
 'CHIBUGADO' 'PEATON' 'COMUNIDAD DE GUAGUA' 'La Playa' 'LA RIVERA'
 'CAMINO' 'CASA DE PARTERA' 'DISP. MEDICO DE BUCARAMANGA'
 'NACIO EN AMBULANCIA' 'IPS LA VEGA' 'buena vista' 'ALTO SARDINATA'
 'AMBULANCIA  VIA PUBLICA' 'AMBULALCIA' 'VEREDA GUADITA'
 'PARTO EN VEHICULO' 'VDA EL PELLISCO- AMBULANCIA' 'casa grande aluucx'
 'MOTOCARRO' 'CAMINO DE LA VEREDA' 'VIA PUBLICA  EN AMBULANCIA'
 'CARRETERA NACIONAL' 'Vehiculo' 'RESGUARDO INDIGENA ROSARIO - C'
 'ASENTAMIENTO PROVIDENCIA' 'VEHICULO EN CARRETERA'
 'AMBULANCIA-VIA SAN LUIS DE PAL' 'VEREDA EL TRIUNFO'
 'AMBULANCIA DE EXTRAMURAL' 'VIA PUBLICA DENTRO DE TAXI' 'AVENIDA'
 'papapayl' 'VIAJANDO EN BOTE' 'TRASPORTE' 'RESGUARDO NEJALA SECTOR 8'
 'AMBULANCIA  VÌA CERTEGUI' 'COMUNIDAD LEGIADA' 'VEREDA PEDREGAL'
 'AMBULANCIA VIA NATAGA - NEIVA' 'CLINICA' 'PARTERA DOÑA NANCY'
 'VIA VEREDA SAN RAFAEL' 'PUERTO' 'PUESTO DE SALUD PALMOR' 'POTRERO'
 'BUS DE TRANSPORTE PUBLICO' 'CARRO DE BOMBERO' 'via  publica'
 'MUELLE DEL HOSPITAL' 'CENTRO DE SALUD CABO DE LA VEL'
 'sitio de residenciaa' 'EN TRASPORTE PUBLICO' 'ASENTAMIENTO NUKAK'
 'MABULANCIA' 'VIA  PUBLICA' 'PATRULLA DE LA POLICIA'
 'AMBULANCIA- VIA PUBLICA' 'PANGA QUE NAVEGABA POR EL RIO '
 'BARRIO ARBOLEDA' 'Finca la morenita ' 'CENTRO DE SALUD PUERTO BOLIVAR'
 'PUERTO FLUVIAL DE LA PESQUERA' 'VEREDA TAMURIA' 'PARQUE'
 'LA CASA DE LA PARTERA' 'HOSPITAL MUNICIPAL DEL MUNICIP'
 'PUESTO DE SALUD DE RIO MISTRAT' 'CARRERA' 'ANBULANCIA'
 'RESGUARDO INDIGENA ' 'DURANTE TRASLADO EN AMBULANCIA'
 'EN CARRETERA  DENTRO DE UNA CA' 'VEREDA BALCONES'
 'RESG CHOLOLOBO COM CHOLOLOBO' 'TRANSPORTE PUBLICO (TAXI)'
 'BRISAS DEL GUEJR VEREDA' 'EN AMBULANCIA' 'PUERTO DEL MUNICIPIO.'
 'MOTOTAXI CALLE' 'CAMION' 'EN LA CALLE' 'VIA PUBLICA- CON PARTERO'
 'vereda altagracia-Finca' 'PUESTO DE SALUD RIO MISTRATO'
 'CAMINO AL HOSPITAL' 'CASA DE PARTO TRADICIONAL TREI' 'Matabambu'
 'Comunidad algarrobo' 'RESGUARDO JACOME '
 'PARTO ATENDIDO DURANTE EN TRASLADO EN AMBULANCIA' 'taxi ' 'CHALUPA '
 'EL ALGARROBO' 'AMBULANCIA VIA AMALFI YOLOMBO' 'MONTE'
 'PARTO DOMICILIARIO ' 'AUTOMOVIL PERSONAL ' 'campo abierto'
 'CARRETERA QUE DE BUENAVISTA CONDUCE AL TABLON'
 'comunidad indígena Hitnu' 'EL DOMICILIO ' 'bote '
 'Ambulancia personal de Bomberos' 'CALLE EN UN MOTO TAXI '
 'Finca San Mar' 'PUEBLO HITNU' 'Casa de paciente '
 'RESGUARDO INDIGENA JACOME' 'CALLE   VEHICULO' 'Comunidad Guaripa'
 'en la ambulancia ' 'vía sabana' 'RESGUARDO INDIGENA AGUA NEGRA'
 'FINCA BELLA Y POLITO VIA PALMARITO' 'VIA HOSPITAL DE LA VIRGINIA '
 'TAXI DURANTE TRASLADO A INSTITUCION DE SALUD ' 'TRANSPORTE PRIVADO'
 'RANCHERIA WARRURAPALEN ' 'Automovil' 'Vía pública ' 'en la calle'
 'VIA DOMICILIO A CENTRO DE SALUD' 'via publica ambulancia'
 'EN LA COMUNIDAD' 'vereda agua verde ' 'VIA PUBLICA '
 'CARRETERA EN VEREDA LA GORGONA' 'DESCONOCIDO ' 'BOTE ' 'ANDEN DE CASA'
 'EN VIA TERRESTE ENTRADA  DE CARMELO '
 'HOSPITAL DEPARTAMENTAL SAN JOSE DE SAN JOSE CALDAS' 'VEREDA GUALILO'
 'CLINICA PROINSALUD' 'EN LA COMUNIDAD ' 'carretera ' 'Comunidad Indígena'
 'puesto de salud el valle ' 'NACE EN PANGA EN CACARICA' 'vehículo'
 'AMBULANCIA PLACA OVM355' 'vereda bocana las verdes '
 'DENTRO DEL VEHICULO' 'VIA PUBLICA  DEL MUNICIPIO DE NATAGA '
 'EN LA AMBULACIA ' 'DUITAMA'
 'ASOCIACION DE PARTERAS ASOPARUPA BUENAVENTURA VALLE DEL CAUC'
 'EL DOMICILO ' 'CORREGIMIENTO CAMPO 2' 'Puesto de salud Tomachipan'
 'COLEGIO VEREDA LA PALMERA ' 'Carretera pública'
 'CENTRO DE ATENCION PRIMARIA EN VEREDA PUERTO GAITAN'
 'CARRO FRENTE PUESTO DE SALUD AREMASAIN' 'CENTRO DESALUD QUIFA'
 'VIA PUBLICA DE LA VEREDA MENDEZ EN DIRECCION HACIA ZONA URBA' 'El Carro'
 'FINCA EN LA COMUNIDAD DE GUAMUCO'
 'MENOR CON NACIMIENTO EXTRAINSTITUCIONAL EN TAXI' 'VEREDA ZARAGOZA'
 'UNIDAD DE CUIDADO  EN SALUD PROPIA E INTRACULTURAL UNICUSPI '
 'casa de vecinos' 'PARQUE LA FLORIDA' 'VIA CAICEDO' 'GUARIPA'
 'COMUNIDAD INDIGENA HITNU' 'UIMIST' 'CAI DE POLICIA' 'COMUNIDAD BOCOTA'
 'LANCHA DE REMISION' 'CARIJED' 'TRANSPORTE' 'CASCAJERO CHOCO'
 'VEREDA LA CORCOBADA' 'VIA PUBLICA EN CARRO' 'TRANSPORTE URBANO (CARRO)'
 'CENTRO DE SALUD- PUERTO BOLIVA' 'RESGUARDO INDIGENA EL MEREY -'
 'HOSPITAL JULIO FIGUEROA VILLA' 'AUTOMÓVIL' 'LA SIERRA'
 'CARRETERA VIA DORADA-LÉRIDA' 'EN LA VIA  CARRO DONDE SE TRAN'
 'EN CARRETERA HACIA HOSPITAL' 'AMBULANCIA  DE  TRASLADO  A  HOSPITAL'
 'CARRETA' 'VEHICULO PARTICULAR DE TRASLADO HACIA EL HOSPITAL '
 'AUTOBUS PUBLICO' 'PUERTO VALENCIA' 'VEHÍCULO DE SERVICIO PUBLICO'
 'EN UN BOTE  LA AZUCAR  RIO MIR' 'oficina' 'CARRO DE BOMBEROS'
 'VIA PLAYA RICA A ROVIRA' 'VIA PUBLICA - CARRETERA' 'EN VIA PUBLICA'
 'en taxi ' 'En la ambulancia ' 'HUEM ' 'Casa de partera '
 'HOSPITAL UNIVERSITARIO ERASMO MEOZ'
 'noción en la ambulancia durante el traslado'
 'EL PUESTO DE SALUD DE RIO MISTRATO' 'Vereda San Francisco  '
 'EN LA CARRETERA ' 'CARRETERA ENTRE CUATRO VIENTO Y BOSCONIA'
 'resguardo unuma meta ' 'CAMPO ABIERTO COMUNIDAD UWA'
 'RIO ATRATO  TUMARADO' 'La Sonora'
 'VIA PUBLICA EN SECTOR TRINIDAD A VEREDA LA ESPERANZA ' 'CASA VECINA '
 'LANCHA  ' 'VEHÍCULO  CARRO' 'DESCONOCIDO'
 'Comunidad Indígena Parreros Vereda Betoyes'
 'VIA PUBLICA    DEL CORREGIMIENTO DEL SINAI' 'san juancito'
 'vehiculo publico' 'CASA VEREDA SAN CARLOS ' 'Puerto murillo '
 'EN VIA PUBLICA PARTO DURANTE TRASLADO EN AMBULANCIA SAMANIEG'
 'FRENTE A PUESTO DE SALUD AREMASAIN'
 'camino desde la vereda el mango a puerto guzman' 'En la calle'
 'TRANSPORTE HACIA HOSPITAL' 'CONSULTORIO PREVIS ' 'vehculo '
 'camino real hacia comunidad indígena de Segovia' 'CAMINO AL CENTRO'
 'centro de salud de papayal' 'HOSPITAL SANTA SOFIA'
 'AMBULANCIA - VIA SANTA ANA A P' 'EL TAPAO' 'V/ BELLA VISTA.' 'AMBULACIA'
 'EN LA PANGA']
Valores no válidos: [nan]

FECHA_NACM - Valores no válidos detectados: 259405
Valores válidos detectados: ['12/10/2015' '12/09/2012' '14/03/2019' ... '19/12/1999' '03/06/1997'
 '01/03/1999']
Valores no válidos: [nan]

In [54]:
incosistences22 = check_consistency(nac2022_data)
Todos los tipos de datos son consistentes con los esperados.
C:\Users\PC2\AppData\Local\Temp\ipykernel_7124\604307692.py:92: DeprecationWarning: is_categorical_dtype is deprecated and will be removed in a future version. Use isinstance(dtype, pd.CategoricalDtype) instead
  elif pd.api.types.is_categorical_dtype(dataset[col]):